คำถามติดแท็ก algorithm-analysis

คำถามเกี่ยวกับวิทยาศาสตร์และศิลปะในการกำหนดคุณสมบัติของอัลกอริธึมบ่อยครั้งรวมถึงความถูกต้องการใช้งานจริงและการใช้พื้นที่ ใช้แท็ก [การวิเคราะห์รันไทม์] สำหรับคำถามเกี่ยวกับรันไทม์ของอัลกอริทึม

2
ความซับซ้อนในการค้นหาสูงสุดแบบสองมิติ (MIT OCW 6.006)
ในวิดีโอการบรรยายสำหรับMIT OCW 6.006เวลา 43:30 ได้รับ m × nm×nm \times n มดลูก AAA กับ ม.mm คอลัมน์และ nnn แถวซึ่งเป็นอัลกอริธึมการค้นหาสูงสุดแบบสองมิติซึ่งค่าสูงสุดคือค่าใด ๆ ที่มากกว่าหรือเท่ากับเพื่อนบ้านที่อยู่ติดกันอธิบายว่า: หมายเหตุ: หากมีความสับสนในการอธิบายคอลัมน์ผ่าน nnnฉันขอโทษ แต่นี่เป็นวิธีที่วิดีโอการบรรยายอธิบายและฉันพยายามที่จะสอดคล้องกับวิดีโอ มันทำให้ฉันสับสนมาก เลือกคอลัมน์กลาง n / 2n/2n/2// มีความซับซ้อนΘ ( 1 )Θ(1)\Theta(1) ค้นหาค่าสูงสุดของคอลัมน์ n/2n/2n/2// มีความซับซ้อน Θ(m)Θ(m)\Theta(m) เพราะมี mmm แถวในคอลัมน์ ตรวจสอบขอบเขต แถวเพื่อนบ้านของค่าสูงสุดหากมีค่ามากกว่าจะพบจุดสูงสุดมิฉะนั้นจะเรียกเก็บเงินคืนT(n/2,m)T(n/2,m)T(n/2, m)// มีความซับซ้อนT(n/2,m)T(n/2,m)T(n/2,m) จากนั้นเพื่อประเมินการสอบถามซ้ำผู้สอนการบรรยายกล่าว T(1,m)=Θ(m)T(1,m)=Θ(m)T(1,m) = \Theta(m) เพราะมันพบค่าสูงสุด T(n,m)=Θ(1)+Θ(m)+T(n/2,m)(E1)(E1)T(n,m)=Θ(1)+Θ(m)+T(n/2,m) T(n,m) …

3
Big O: ซ้อนกันสำหรับวนรอบกับการพึ่งพา
ฉันได้รับการบ้านด้วย Big O. ฉันติดอยู่กับรังซ้อนสำหรับลูปที่ขึ้นอยู่กับลูปก่อนหน้านี้ นี่คือคำถามการทำการบ้านของฉันเนื่องจากฉันต้องการที่จะเข้าใจจริงๆ: sum = 0; for (i = 0; i < n; i++ for (j = 0; j < i; j++) sum++; ส่วนที่ขว้างฉันไปคือj < iส่วนหนึ่ง ดูเหมือนว่ามันจะดำเนินการเหมือนแฟคทอเรียล แต่มีการเพิ่มเติม คำแนะนำใด ๆ ที่จะได้รับการชื่นชมจริงๆ

3
Quicksort มีรันไทม์สมการกำลังสองเสมอหรือไม่ถ้าคุณเลือกองค์ประกอบสูงสุดเป็น pivot
หากคุณมีอัลกอริทึมการเรียงลำดับอย่างรวดเร็วและคุณเลือกองค์ประกอบที่เล็กที่สุด (หรือใหญ่ที่สุด) เป็นเดือยของคุณ ฉันถูกสมมติว่าถ้าคุณให้ชุดข้อมูลที่เรียงแล้วคุณจะได้รับประสิทธิภาพกรณีที่เลวร้ายที่สุดโดยไม่คำนึงว่ารายการ 'เรียงแล้ว' ของคุณอยู่ในลำดับขึ้นหรือลง ความคิดของฉันคือถ้าคุณเลือกองค์ประกอบที่เล็กที่สุดสำหรับเดือยของคุณไม่ว่าอินพุต 'เรียงแล้ว' ของคุณจะถูกเรียงลำดับจากน้อยไปมากหรือจากมากไปหาน้อยไม่สำคัญเพราะเซตย่อยที่เลือกให้เรียงกับเดือยของคุณจะเป็น ขนาดเดียวกัน?

1
ทำไมความซับซ้อนของการลบรอบการลบ
เราต้องการแก้ปัญหาการไหลของต้นทุนที่น้อยที่สุดด้วยอัลกอริทึมการยกเลิกเชิงลบทั่วไป นั่นคือเราเริ่มต้นด้วยการไหลที่ถูกต้องแบบสุ่มและจากนั้นเราจะไม่เลือกวัฏจักรเชิงลบ "ดี" ใด ๆ เช่นรอบต้นทุนเฉลี่ยขั้นต่ำสุด แต่ใช้ Bellman-Ford เพื่อค้นหารอบที่น้อยที่สุดและเพิ่มตามรอบการค้นพบ Letเป็นจำนวนโหนดในกราฟจำนวนขอบความจุสูงสุดของขอบในกราฟและVVVAAAยูยูUWWWค่าใช้จ่ายสูงสุดของขอบในกราฟ จากนั้นสื่อการเรียนรู้ของฉันอ้างสิทธิ์: ค่าใช้จ่ายสูงสุดที่จุดเริ่มต้นต้องไม่เกิน UWAยูWAUW การเพิ่มไปตามวัฏจักรลบหนึ่งครั้งจะช่วยลดต้นทุนได้อย่างน้อยหนึ่งหน่วย ขอบล่างสำหรับต้นทุนต่ำสุดคือ 0 เพราะเราไม่อนุญาตให้มีค่าใช้จ่ายติดลบ แต่ละรอบการลบสามารถพบได้ใน O ( Vก)O(VA)O(VA) และพวกเขาก็ทำตามความซับซ้อนของอัลกอริทึม O(V2UW)O(V2AยูW)O(V^2AUW). ฉันเข้าใจเหตุผลที่อยู่เบื้องหลังการอ้างสิทธิ์แต่ละข้อ แต่คิดว่าความซับซ้อนนั้นแตกต่างกัน โดยเฉพาะจำนวนสูงสุดของการเพิ่มจะได้รับจากหนึ่งหน่วยของการไหลต่อการเสริมการใช้ค่าใช้จ่ายจากUWAยูWAUW ถึงศูนย์ทำให้เราได้มากที่สุด UWAยูWAUWaugmentations เราจำเป็นต้องค้นพบวัฏจักรเชิงลบสำหรับแต่ละดังนั้นเราจึงเพิ่มจำนวนสูงสุดของการขยายเวลาที่จำเป็นในการค้นพบรอบ (VAVAVA) และมาถึงที่ โอ(A2VยูW)O(A2VยูW)O(A^2VUW) สำหรับอัลกอริทึม นี่อาจเป็นข้อผิดพลาดในสื่อการเรียนรู้ (นี่เป็นข้อความที่อาจารย์ให้ไว้ไม่ใช่จากบันทึกของนักเรียนจากหลักสูตร) ​​หรือเหตุผลของฉันผิด?

1
การแก้ไขการเกิดซ้ำผ่านพหุนามลักษณะด้วยรากแบบจินตภาพ
ในการวิเคราะห์อัลกอริทึมคุณมักจะต้องแก้ปัญหาซ้ำ นอกเหนือไปจากโททฤษฎีบททดแทนและซ้ำวิธีการมีหนึ่งโดยใช้ชื่อที่ประกอบด้วยหลายลักษณะ บอกว่าฉันได้ข้อสรุปว่าพหุนามลักษณะ x2- 2 x + 2x2−2x+2x^2 - 2x + 2มีรากในจินตนาการคือx1= 1 + ix1=1+ix_1 = 1+i และ x2= 1 - ix2=1−ix_2 =1-i. ถ้าอย่างนั้นฉันก็ใช้ไม่ได้ ค1⋅xn1+ค2⋅xn2c1⋅x1n+c2⋅x2n\qquad c_1\cdot x_1^n + c_2\cdot x_2^n ได้รับการแก้ปัญหาใช่มั้ย ฉันควรดำเนินการอย่างไรในกรณีนี้

3
ความซับซ้อนของเวลาลอการิทึมเทียบกับลอการิทึม
ในการใช้งานจริงจะมีประโยชน์อย่างชัดเจนเมื่อใช้งาน O (บันทึก( บันทึก( n ) )O(log⁡(log⁡(n))\mathcal{O}(\log(\log(n)) แทน O (บันทึก( n ) )O(log⁡(n))\mathcal{O}(\log(n)) อัลกอริทึม? นี่เป็นกรณีที่เมื่อมีการใช้งานหนึ่งต้นสำหรับต้นไม้ Van Emde Boas แทนที่จะเป็นการใช้งานแบบต้นไม้ค้นหาแบบทวิภาค แต่ตัวอย่างเช่นถ้าเราใช้n &lt;106n&lt;106n < 10^6 ในกรณีที่ดีที่สุดอัลกอริธึมลอการิทึมสองครั้งจะมีประสิทธิภาพเหนือกว่าลอการิทึมหนึ่งโดย (โดยประมาณ) ปัจจัยของ 555. และโดยทั่วไปแล้วการใช้งานนั้นยุ่งยากและซับซ้อนมากขึ้น เนื่องจากฉันชอบ BST ส่วนตัวมากกว่าต้นไม้ VEB คุณคิดอย่างไร? หนึ่งสามารถแสดงให้เห็นว่า: ∀ n &lt;106. เข้าสู่ระบบnเข้าสู่ระบบ( บันทึก( n ) )&lt; 5.26146∀n&lt;106. log⁡nlog⁡(log⁡(n))&lt;5.26146\qquad \displaystyle \forall n < 10^6.\ \frac{\log …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.