คำถามติดแท็ก sorting-network

1
อัลกอริทึมการเรียงลำดับเช่นว่าองค์ประกอบแต่ละรายการมีการเปรียบเทียบ
มีอัลกอริธึมการเรียงลำดับการเปรียบเทียบใด ๆ ที่รู้จักซึ่งไม่ลดการจัดเรียงเครือข่ายเช่นนั้นแต่ละองค์ประกอบถูกเปรียบเทียบครั้งหรือไม่O(logn)O(log⁡n)O(\log n) เท่าที่ฉันรู้วิธีเดียวที่จะเรียงลำดับด้วยการเปรียบเทียบในแต่ละองค์ประกอบคือการสร้างเครือข่ายการเรียงลำดับ AKS สำหรับอินพุตnและเรียกใช้อินพุตบนเครือข่ายการเรียงลำดับO(logn)O(log⁡n)O(\log n)nnn AKS นั้นไม่ใช่เรื่องง่ายที่จะนำไปใช้และมีปัจจัยคงที่ที่ใช้ไม่ได้ดังนั้นจึงมีแรงจูงใจในการค้นหาอัลกอริธึมอื่น ๆ อัลกอริทึมที่มีการเปรียบเทียบต่อรายการซึ่งดูเหมือนจะไม่ได้บ่งบอกถึงเครือข่ายการเรียงลำดับที่จะนำเสนอที่นี่ (iirc นี่เป็นครั้งแรกที่นำเสนอโดยRob Johnsonในการสัมมนาอัลกอริทึมของ Stony Brook)O(log2n)O(log2⁡n)O(\log^2 n)

1
การรวมรายการของวัตถุที่บอบบาง
พื้นหลัง:เจ้าเสี่ยวโพสต์คำถามต่อไปนี้เวลาที่ผ่านมา " มีการเปรียบเทียบที่รู้จักกันใด ๆ เรียงลำดับขั้นตอนวิธีการที่ไม่ได้ลดไปยังเครือข่ายการเรียงลำดับเช่นว่าแต่ละองค์ประกอบจะถูกเปรียบเทียบครั้ง?O(logn)O(log⁡n)O(\log n) " ดูเหมือนว่าเราติดอยู่กับปัญหาเล็กน้อย ฉันได้พูดคุยปัญหาเดียวกันกับ Valentin Polishchuk ในปี 2009 และเราไปถึงไหนแล้ว เพื่อให้ได้แนวคิดใหม่ ๆ ฉันพยายามหาคำถามที่ง่ายที่สุดที่มีรสชาติคล้ายกันและไม่น่ารำคาญ ดังนั้นคำถามต่อไปนี้ คำถาม:คุณจะได้รับรายการที่เรียงสองรายการโดยแต่ละรายการมีองค์ประกอบnnnรายการ คุณสามารถรวมรายการต่างๆเพื่อให้แต่ละองค์ประกอบเปรียบเทียบเฉพาะO(1)O(1)O(1)ครั้งได้หรือไม่ โดยปกติเอาต์พุตควรเป็นรายการที่เรียงลำดับซึ่งมีองค์ประกอบทั้งหมด2n2n2n [สิ่งนี้กลายเป็นเรื่องไม่สำคัญคำตอบคือ "ไม่"] คำถามที่ 2:คุณได้รับสองรายการที่เรียงลำดับโดยแต่ละรายการมีองค์ประกอบnnnรายการ คุณสามารถรวมรายการต่างๆเพื่อให้แต่ละองค์ประกอบมีการเปรียบเทียบO(1)O(1)O(1)ครั้งเท่านั้นหากคุณได้รับอนุญาตให้ยกเลิกองค์ประกอบส่วนเล็ก ๆ ได้หรือไม่ ผลลัพธ์ที่ได้ควรเป็นรายการที่เรียงลำดับที่มีองค์ประกอบ2n−T(n)2n−T(n)2n-T(n)และ "ถังขยะ" ที่มีองค์ประกอบT(n)T(n)T(n)คุณสามารถทำให้ค่าขนาดเล็กแค่ไหน การได้รับนั้นไม่สำคัญ สิ่งที่ต้องการควรทำได้ในลักษณะที่ตรงไปตรงมา แต่คุณจะได้ไหมT(n)T(n)T(n)T(n)=nT(n)=nT(n) = nT(n)=n/100T(n)=n/100T(n) = n/100T(n)=o(n)T(n)=o(n)T(n) = o(n) หมายเหตุ: เราใช้รูปแบบการเปรียบเทียบที่นี่ อัลกอริทึมที่กำหนดเท่านั้นเราสนใจในการรับประกันกรณีที่เลวร้ายที่สุด โปรดทราบว่ารายการทั้งสองมีองค์ประกอบอย่างแน่นอน ถ้าเรามีหนึ่งรายการที่มีองค์ประกอบnรายการและอีกหนึ่งรายการมี1องค์ประกอบคำตอบนั้นชัดเจนว่า "ไม่" แต่ถ้าทั้งสองรายการมีความยาวมันก็ดูเหมือนว่าหนึ่งอาจจะสามารถที่จะทำบางอย่าง "สมดุลภาระ"nnnnnn111 เวลานี้อัลกอริทึมชนิดใดก็ได้ที่ถูกต้อง หากอัลกอริทึมของคุณใช้เครือข่ายการเรียงลำดับเป็นแบบเอกสารสำเร็จรูปจะถือว่าสมบูรณ์แบบ …

1
การเรียงลำดับสำหรับ 0-1 หลายโพลิโนมีนวนมากสำหรับเครือข่ายการเรียงลำดับนั้นเพียงพอหรือไม่?
หลักการ 0-1 บอกว่าถ้าเครือข่ายการเรียงลำดับทำงานได้กับลำดับ 0-1 ทั้งหมดมันจะใช้ได้กับชุดตัวเลขใด ๆ มีเช่นนั้นหรือไม่หากเครือข่ายเรียงลำดับทุก ๆ 0-1 จาก S จากนั้นจะเรียงลำดับทุก 0-1 และขนาดของSเป็นพหุนามในnหรือไม่S⊂{0,1}nS⊂{0,1}nS\subset \{0,1\}^nSSSnnn ตัวอย่างเช่นถ้าประกอบด้วยลำดับทั้งหมดที่มีการรันมากที่สุด2ครั้ง (ช่วงเวลา) ของ 1 ดังนั้นจะมีเครือข่ายการเรียงลำดับ N และลำดับที่ไม่ได้รับคำสั่งจาก N หากสมาชิกทั้งหมดของSถูกสั่งโดย N?SSS222SSS คำตอบ:ตามที่เห็นได้จากคำตอบและความคิดเห็นคำตอบก็คือสำหรับสตริงที่ไม่เรียงลำดับทั้งหมดจะมีเครือข่ายการเรียงลำดับที่เรียงลำดับสตริงอื่น ๆ หลักฐานง่าย ๆ สำหรับสิ่งนี้คือ Let สตริงเป็นเช่นนั้นs ฉัน = 0เป็นนิตย์ฉัน&lt; kและs k = 1 ตั้งแต่sจะไม่ได้เรียงลำดับหลังจากการเรียงลำดับs kควรจะเป็น0 เปรียบเทียบkกับทุก ๆiที่s i =s=s1…sns=s1…sns=s_1\ldots s_nsi=0si=0s_i=0i&lt;ki&lt;ki<ksk=1sk=1s_k=1ssssksks_k000kkkiii . จากนั้นเปรียบเทียบทุกคู่ ( i …

1
ความน่าจะเป็นที่เครือข่ายการเรียงลำดับแบบสุ่มทำงาน
รับอินพุต0 x , … , x n - 1 , เราสร้างเครือข่ายการเรียงลำดับแบบสุ่มด้วยm gates โดยการเลือกตัวแปรสองตัวx i , x jกับi &lt; jและเพิ่มประตูตัวเปรียบเทียบที่แลกเปลี่ยนหากx i &gt; x j .nnnx0,…,xn−1x0,…,xn−1x_0, \ldots, x_{n-1}mmmxi,xjxi,xjx_i, x_ji&lt;ji&lt;ji < jxi&gt;xjxi&gt;xjx_i > x_j คำถามที่ 1 : สำหรับการแก้ไขnnnวิธีต้องมีขนาดใหญ่mmmเป็นเครือข่ายในการจัดเรียงอย่างถูกต้องกับความน่า&gt;12&gt;12> \frac{1}{2} ? เรามีขอบเขตล่างอย่างน้อยm=Ω(n2logn)m=Ω(n2log⁡n)m = \Omega(n^2 \log n)เนื่องจากอินพุตที่จัดเรียงอย่างถูกต้องยกเว้นว่าการสลับแต่ละคู่ที่ต่อเนื่องกันจะใช้เวลาΘ(n2logn2)Θ(n2log⁡n2)\Theta(n^2 \log n^2)สำหรับแต่ละคู่ที่จะถูกเลือกเป็นตัวเปรียบเทียบ . คือว่ายังผูกพันบนอาจจะมีมากขึ้นlognlog⁡n\log nปัจจัย? คำถามที่ 2 : …

1
ความน่าจะเป็นของการสร้างการเรียงสับเปลี่ยนที่ต้องการโดยการสุ่มสลับ
ฉันสนใจปัญหาต่อไปนี้ เรากำลังได้รับเป็น input เป็น "เป้าหมายของการเปลี่ยนแปลง"เช่นเดียวกับรายการสั่งซื้อของดัชนี[n-1] จากนั้นเริ่มต้นด้วยรายการ (เช่นการเปลี่ยนแปลงตัวตน) ในแต่ละขั้นตอนเราจะสลับในด้วยองค์ประกอบที่มีความน่าจะเป็นอิสระ1/2ให้เป็นความน่าจะเป็นที่ถูกสร้างขึ้นเป็นเอาท์พุทσ∈Snσ∈Sn\sigma\in S_ni1,…,im∈[n−1]i1,…,im∈[n−1]i_1,\ldots,i_m\in [n-1]L=(1,2,…,n)L=(1,2,…,n)L=(1,2,\ldots,n)t∈[m]t∈[m]t\in [m]ithtitthi_t^{th}LLL(it+1)st(it+1)st(i_t+1)^{st}1/21/21/2pppσσ\sigma ฉันต้องการทราบสิ่งต่อไปนี้: กำลังตัดสินใจว่าเป็นสมบูรณ์แบบของหรือไม่p&gt;0p&gt;0p>0NPNPNP กำลังคำนวณpppว่า#P#P\#Pหรือไม่ เราจะพูดอะไรเกี่ยวกับการประมาณค่าpppในค่าคงที่แบบหลายค่า มี PTAS สำหรับสิ่งนี้หรือไม่? ตัวแปรที่การแลกเปลี่ยนไม่จำเป็นต้องเป็นองค์ประกอบที่อยู่ติดกันก็เป็นที่สนใจเช่นกัน โปรดทราบว่าไม่ยากที่จะลดปัญหานี้ไปยังเส้นทางที่ไม่ต่อเชื่อม (หรือกับการไหลแบบมัลติซีติตี้ที่มีค่าจำนวนเต็ม) สิ่งที่ฉันไม่รู้คือการลดลงในทิศทางอื่น อัปเดต:ตกลงตรวจสอบ Garey &amp; Johnson ปัญหาของพวกเขา [MS6] ("การเปลี่ยนแปลงระดับ") เป็นดังนี้ เมื่อป้อนข้อมูลเป็นเป้าหมายการเปลี่ยนแปลงพร้อมกับส่วนย่อย , ตัดสินใจว่าสามารถแสดงออกได้เป็นผลิตภัณฑ์ , ซึ่งแต่ละคนทำสิ่งเล็กน้อย ดัชนีทั้งหมดไม่ได้อยู่ในS_i Garey จอห์นสัน, มิลเลอร์และ Papadimitriou (หลัง paywall โชคไม่ดี) พิสูจน์ให้เห็นว่าปัญหานี้เป็น -hardσ∈Snσ∈Sn\sigma\in S_nS1,…,Sm∈[n]S1,…,Sm∈[n]S_1,\ldots,S_m\in [n]σσ\sigmaτ1⋯τmτ1⋯τm\tau_1 \cdots \tau_mτiτi\tau_iSiSiS_iNPNPNP หากการแลกเปลี่ยนไม่จำเป็นต้องอยู่ติดกันฉันเชื่อว่านี่เป็นนัยว่าการตัดสินใจว่าเป็น …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.