วิทยาศาสตร์คอมพิวเตอร์

ถาม - ตอบสำหรับนักเรียนนักวิจัยและผู้ปฏิบัติงานด้านวิทยาการคอมพิวเตอร์

4
NFA ที่มีจำนวนสถานะเป็นเลขชี้กำลังเมื่อมีการกระจายออก
ฉันจะสร้างตัวอย่างของ DFA ที่มีสถานะโดยที่ NFA ที่เทียบเท่ามี state ได้อย่างไร เห็นได้ชัดว่าชุดสถานะของ DFA ควรมีชุดย่อยทั้งหมดของชุดสถานะของ NFA แต่ฉันไม่รู้ว่าจะเริ่มอย่างไร ข้อเสนอแนะใดที่จะทำให้ฉันในการติดตามที่ถูกต้อง?2n2n2^nnnn

2
ทำ
คือที่มีการเข้าถึงของออราเคิลเพื่อขนาดใหญ่กว่าเพียง ? ตามที่ผมเข้าใจเป็นเพียงเครื่องทัวริงที่สามารถทำให้คำสั่งไปยังคนอื่น ๆเครื่องถ้าดังนั้นกว่าสามารถจำลอง ? มีบางอย่างผิดปกติกับการโต้แย้งนี้หรือไม่?ยังไม่มีข้อความPNPNPยังไม่มีข้อความPNPNPยังไม่มีข้อความPNPNPยังไม่มีข้อความPยังไม่มีข้อความPNPNPNP^ {NP}ยังไม่มีข้อความPNPNPยังไม่มีข้อความPNPNPยังไม่มีข้อความPยังไม่มีข้อความPNPNPNP^{NP}

2
ความซับซ้อนของการคำนวณค่าสัมประสิทธิ์สหสัมพันธ์ของสเปียร์แมนคืออะไร?
ฉันกำลังศึกษาสัมประสิทธิ์สหสัมพันธ์ของสเปียร์แมน ρ =Σผม(xผม-x¯) (Yผม-Y¯)Σผม(xผม-x¯)2Σผม(Yผม-Y¯)2-------------------√ρ=∑i(xi−x¯)(yi−y¯)∑i(xi−x¯)2∑i(yi−y¯)2\qquad \displaystyle \rho = \frac{\sum_i(x_i-\bar{x})(y_i-\bar{y})}{\sqrt{\sum_i (x_i-\bar{x})^2 \sum_i(y_i-\bar{y})^2}}. สำหรับสองรายการ x1, … ,xnx1,…,xnx_1, \dots, x_n และ Y1, … ,Yny1,…,yny_1, \dots, y_n. อะไรคือความซับซ้อนของขั้นตอนวิธี? เนื่องจากอัลกอริทึมควรคำนวณ nnn การลบมันเป็นไปได้ไหม O ( n )O(n)O(n) ?

1
ฉันจะสร้างรายการขอบที่เชื่อมต่อเป็นสองเท่าได้อย่างไรเมื่อได้รับชุดของส่วนของเส้น
สำหรับระนาบกราฟกราฟที่กำหนดฝังอยู่ในระนาบกำหนดโดยชุดของส่วนของบรรทัดแต่ละเซกแสดงด้วยจุดปลาย\} สร้างโครงสร้างข้อมูล DCEL สำหรับส่วนภาพถ่ายอธิบายขั้นตอนวิธีพิสูจน์ความถูกต้องและแสดงความซับซ้อนG(V,E)G(V,E)G(V,E)E={e1,...,em}E={e1,...,em}E= \left \{ e_1,...,e_m \right \} eieie_i{Li,Ri}{Li,Ri}\left \{ L_i,R_i \right \} ตามคำอธิบายนี้ของโครงสร้างข้อมูล DCELมีการเชื่อมต่อมากมายระหว่างวัตถุต่าง ๆ (เช่นจุดยอด, ขอบและใบหน้า) ของ DCEL ดังนั้น DCEL ดูเหมือนจะสร้างและบำรุงรักษาได้ยาก คุณรู้จักอัลกอริธึมที่มีประสิทธิภาพซึ่งสามารถใช้สร้างโครงสร้างข้อมูล DCEL ได้หรือไม่?


4
Turing Machine (TM) สามารถตัดสินใจได้หรือไม่ว่าปัญหาการหยุดใช้งานกับ TM ทั้งหมดหรือไม่
ในเว็บไซต์นี้มีคำถามมากมายเกี่ยวกับว่า TM สามารถตัดสินใจปัญหาการหยุดพักได้หรือไม่สำหรับ TM อื่น ๆ ทั้งหมดหรือเซ็ตย่อยบางอย่าง คำถามนี้ค่อนข้างแตกต่าง มันถามว่าข้อเท็จจริงที่ว่าปัญหาการหยุดใช้กับ TM ทั้งหมดนั้นสามารถตัดสินได้โดย TM หรือไม่ ฉันเชื่อว่าคำตอบคือไม่และต้องการตรวจสอบเหตุผลของฉัน กำหนดภาษา meta-เป็นภาษาที่ประกอบด้วย TM ที่ตัดสินใจว่า TM หยุดทำงานหรือไม่LMHLMHL_{MH} LMH={M:∀M′,wM(M′,w) accepts if M′(w) halts, rejects otherwise}LMH={M:∀M′,wM(M′,w) accepts if M′(w) halts, rejects otherwise}L_{MH} = \{ M : \forall_{M',w} M(M', w) \text{ accepts if $M'(w)$ halts, rejects otherwise}\} LMH=∅LMH=∅L_{MH}= \emptysetเนื่องจากปัญหาการหยุดทำงาน ดังนั้นคำถามหัวเรื่องระบุไว้อย่างแม่นยำมากขึ้น: …

1
เหตุใด Coq จึงรวมเอาการแสดงออกมาเป็นภาษาหลัก
Coq รวมถึงการแสดงออกให้เป็นภาษาหลักของมัน เราสามารถแปลการแสดงออกให้กับแอพพลิเคชั่นเช่นนี้: let x : t = v in b ~> (\(x:t). b) v ฉันเข้าใจว่ามันไม่ได้ผลเสมอไปเพราะค่าvจะไม่สามารถใช้ได้เมื่อพิมพ์แบบตรวจbสอบ อย่างไรก็ตามเรื่องนี้สามารถแก้ไขได้อย่างง่ายดายโดยปลอกพิเศษ typechecking (\(x:t). b) vของการใช้งานของฟอร์ม สิ่งนี้ช่วยให้เราสามารถลบการแสดงออกในราคาพิเศษในขณะพิมพ์ เหตุใด Coq จึงรวมถึงให้รวมการแสดงออก? พวกเขามีข้อได้เปรียบอื่น ๆ (นอกเหนือจากไม่จำเป็นต้องใช้กรณีพิเศษ)?

1
เหตุใดจึงกล่าวได้ว่าการค้นหาแบบกว้างแรกแสดงในเวลา
มันมักจะระบุไว้ (เช่นในวิกิพีเดีย ) ที่เวลาทำงานของการค้นหาในแนวกว้าง (BFS) ในกราฟเป็น|) อย่างไรก็ตามกราฟที่เชื่อมต่อใด ๆ มีและแม้ในกราฟที่ไม่ได้เชื่อมต่อ BFS จะไม่มองจุดยอดนอกส่วนประกอบที่มีจุดยอดเริ่มต้น องค์ประกอบนั้นมีอย่างมาก ขอบดังนั้นมันจึงมีจุดยอดมากที่สุดและนั่นเป็นสิ่งเดียวที่อัลกอริธึมจะเข้าชมG = ( V, E)G=(V,E)G=(V,E)O ( | V| + | E| )O(|V|+|E|)O(|V|+|E|)| V| ≤ | E| +1|V|≤|E|+1|V|\leq |E|+1| E||E||E|| E| +1|E|+1|E|+1 ซึ่งหมายความว่าดังนั้นทำไมเราไม่พูดว่าเวลาทำงานเป็นเพียง ?| V| + | E| ≤2 | E| +1|V|+|E|≤2|E|+1|V|+|E|\leq 2|E|+1O ( | E| )O(|E|)O(|E|) นี้ขึ้นมาในความคิดเห็นในคำถามเกี่ยวกับเวลาทำงานของอัลกอริทึม Disjkstra …

1
Finite Automata ที่ไม่สามารถกำหนดค่าได้ ตัวอย่าง Sipser 1.16
ฉันกำลังทำงานผ่าน Sipser Book (ฉบับที่ 2) และพบกับตัวอย่างนี้ซึ่งฉันไม่เข้าใจ ในหนังสือเล่มนี้มันระบุว่า NFA นี้ยอมรับสตริงว่าง\εϵ\epsilon มีใครบางคนที่จะช่วยให้ฉันรู้ว่าทำไมถึงเป็นเช่นนั้น ความเข้าใจของฉันคือจะย้ายไปที่ซึ่งไม่ใช่สถานะที่ยอมรับได้εϵ\epsilonQ3q3q_3

2
รหัสเลขฐานสองที่มีความยาว 6 ขนาด 32 และระยะทาง 2 อยู่หรือไม่
ปัญหาคือการพิสูจน์หรือพิสูจน์หักล้างการดำรงอยู่ของ คCC, เซนต์, | c | =6,∀c∈C|c|=6,∀c∈C|c| = 6,\forall c\in C; | ค| =32|C|=32|C| = 32; d(คผม,คJ) ≥ 2 , 1 ≤ i &lt; j ≤ 32d(ci,cj)≥2,1≤i&lt;j≤32d(c_i,c_j)\geq2,1\leq i<j\leq32. (ddd ย่อมาจากระยะทาง hamming) ฉันพยายามสร้างรหัสที่น่าพอใจ สิ่งที่ดีที่สุดที่ฉันจะได้รับคือปล่อยให้ค=ค'×ค'C=C′×C′C = C'\times C'เรียงต่อกันของ ค'= { 000 , 011 , 110 , 101 }C′={000,011,110,101}C' = \{000,011,110,101\}ซึ่งมีขนาด 16 32 …

2
ค้นหาการสั่งซื้อที่ดีที่สุด
ฉันเจอปัญหานี้และกำลังดิ้นรนเพื่อหาวิธีแก้ไข ความคิดใด ๆ ที่จะได้รับการชื่นชมอย่างมาก! สมมติว่าเราได้รับเมทริกซ์ตัวอย่างเช่น{ - 1 , 0 , 1}n × k {−1,0,1}n × k\{-1, 0, 1\}^{n\ \times\ k} ⎡⎣⎢⎢⎢⎢⎢⎢1- 10- 11001- 101010000010- 11- 11- 1⎤⎦⎥⎥⎥⎥⎥⎥[1010−1−100010110−1−1−10111000−1]\begin{bmatrix} 1 & 0 & 1 & 0 & -1 \\ -1 & 0 & 0 & 0 & 1 \\ 0 & 1 …

6
มีการแปรผันของรูทีนปกติของ Big-O-Notation หรือไม่?
มีการแจ้งเตือนหลายรายการเช่นหรือเป็นต้น ฉันสงสัยว่าถ้ามีความแตกต่างของความเป็นจริงเช่นหรือหรือถ้าสิ่งเหล่านั้นไม่ถูกต้องทางคณิตศาสตร์OOOO(n)O(n)O(n)O(n2)O(n2)O(n^2)O(2n2)O(2n2)O(2n^2)O(logn2)O(log⁡n2)O(\log n^2) หรือเป็นสิ่งที่ถูกต้องที่จะบอกว่าเป็นไปได้ที่จะปรับปรุงเป็น ? ฉันยังไม่สามารถและไม่จำเป็นต้องรู้ว่ารันไทม์ยังและฉันไม่จำเป็นต้องปรับปรุงอะไร แต่ฉันต้องรู้ว่านี่เป็นวิธีที่คุณอธิบายฟังก์ชั่นของคุณในความเป็นจริงหรือไม่O(5n2)O(5n2)O(5n^2)O(3n2)O(3n2)O(3n^2)

1
วิธีการเพิ่ม
ฉันเห็นปัญหาอัลกอริทึมมากมายที่มักจะลดสิ่งต่อไปนี้เป็นแนวยาว: คุณมีอาร์เรย์จำนวนเต็มh[1..n]≥0h[1..n]≥0h[1..n]\geq 0คุณต้องไปหา i,ji,ji,j อย่างนั้น (h[j]−h[i])(j−i)(h[j]−h[i])(j−i)(h[j]-h[i])(j-i) ใน O(n)O(n)O(n) เวลา. เห็นได้ชัดว่า O(n2)O(n2)O(n^2) การแก้ปัญหาเวลาคือการพิจารณาทุกคู่อย่างไรก็ตามมีวิธีที่เราสามารถเพิ่มการแสดงออก O(n)O(n)O(n) โดยไม่ทราบอย่างอื่นเกี่ยวกับคุณสมบัติของ hhh? หนึ่งความคิดที่ฉันคิดคือการแก้ไข jjjจากนั้นเราต้องค้นหา i∗i∗i^* จาก 111 ถึง j−1j−1j-1 นั่นเท่ากับ argmaxi{(h[j]−h[i])(j−i)}argmaxi{(h[j]−h[i])(j−i)}\text{argmax}_i\{(h[j]-h[i])(j-i)\} หรือ argmaxi{h[j]j−h[j]i−h[i]j+h[i]i}argmaxi{h[j]j−h[j]i−h[i]j+h[i]i}\text{argmax}_i\{h[j]j-h[j]i-h[i]j+h[i]i\} และตั้งแต่ jjj ได้รับการแก้ไขแล้วเราต้องการ argmaxi{−h[j]i−jh[i]+ih[i]}argmaxi{−h[j]i−jh[i]+ih[i]}\text{argmax}_i\{-h[j]i-jh[i]+ih[i]\}. อย่างไรก็ตามฉันไม่เห็นวิธีที่จะกำจัด jjjเงื่อนไขที่ขึ้นอยู่กับภายใน ความช่วยเหลือใด ๆ

1
มีอัลกอริธึมที่มีประสิทธิภาพสำหรับการพิจารณาว่ากราฟมีออโต้มอร์ฟิซึ่มเล็กน้อยหรือไม่?
ฉันกำลังทำงานกับปัญหาที่เกี่ยวข้องกับละตินสแควร์สและฉันต้องการวิธีการที่จำเป็นอย่างยิ่งในการตัดสินใจปัญหา: การป้อนข้อมูล : การ จำกัด กราฟง่ายกรัม เอาท์พุท : YESถ้า G มี automorphism ไม่น่ารำคาญNOเป็นอย่างอื่น ดังนั้น ... คำถาม : มีอัลกอริธึมที่มีประสิทธิภาพสำหรับการพิจารณาว่ากราฟมีออโต้มอร์ฟิซึ่มเล็กน้อยหรือไม่? เราสามารถใช้ Nauty หรือ Bliss (และแพ็คเกจอื่น ๆ ) เพื่อคำนวณกลุ่ม automorphism ทั้งหมด แต่ฉันไม่ต้องการ สิ่งที่ฉันต้องพิจารณาก็คือมันไม่สำคัญหรือไม่ เป็นไปได้ว่าปัญหาการตัดสินใจนี้มีความซับซ้อนทางทฤษฎีเทียบเท่ากับ "การคำนวณกลุ่มออโตมอร์ฟิซึมทั้งหมด" ในทางใดทางหนึ่ง ฉันไม่แน่ใจ. สำหรับจุดประสงค์ของฉัน "ประสิทธิภาพ" โดยทั่วไปหมายถึง "เร็วกว่าในทางปฏิบัติมากกว่าการคำนวณกลุ่ม automorphism ทั้งหมด" แต่ฉันก็สนใจในทฤษฎีที่อยู่เบื้องหลัง

4
ปัญหาการหยุดทำงานที่ จำกัด จะถูกตัดสินใจได้ ทำไมสิ่งนี้จึงไม่ขัดแย้งกับทฤษฎีบทของไรซ์
คำสั่งหนึ่งของทฤษฎีบทของไรซ์ได้รับในหน้า 35 ของ "ความซับซ้อนในการคำนวณ: วิธีการที่ทันสมัย" (Arora-Barak): ฟังก์ชั่นบางส่วนจาก { 0 , 1}* * * *{0,1}∗\{0,1\}^* ถึง { 0 , 1}* * * *{0,1}∗\{0,1\}^*เป็นฟังก์ชั่นที่ไม่จำเป็นต้องกำหนดในอินพุตทั้งหมด เราบอกว่าเป็น TMMMM คำนวณฟังก์ชั่นบางส่วน ฉff ถ้าสำหรับทุกคน xxx ที่ ฉff ถูกกำหนดไว้ M( x ) = f( x )M(x)=f(x)M(x) = f(x) และสำหรับทุกคน xxx ที่ ฉff ไม่ได้กำหนดไว้ MMM จะเข้าสู่วงวนไม่สิ้นสุดเมื่อดำเนินการกับอินพุต xxx. ถ้าSSS เป็นชุดของฟังก์ชั่นบางส่วนที่เรากำหนด …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.