สารบัญ:
วีดีโอ: อัลกอริทึมการเรียงลำดับใดดีที่สุดในกรณีที่เลวร้ายที่สุด
2024 ผู้เขียน: Lynn Donovan | [email protected]. แก้ไขล่าสุด: 2023-12-15 23:54
อัลกอริทึมการเรียงลำดับ
อัลกอริทึม | โครงสร้างข้อมูล | เวลา ความซับซ้อน :แย่ที่สุด |
---|---|---|
เรียงลำดับด่วน | Array | บน2) |
ผสานการเรียงลำดับ | Array | O(n บันทึก(n)) |
การเรียงลำดับฮีป | Array | O(n บันทึก(n)) |
เรียบเรียง | Array | O(n บันทึก(n)) |
ในกรณีที่เลวร้ายที่สุดประเภทใดดีที่สุด?
Quicksort มักจะเร็วที่สุด แต่ถ้าคุณต้องการช่วงเวลาที่แย่ที่สุด ลอง Heapsort หรือ Mergesort . ทั้งคู่มีเวลา O(n log n) ที่แย่ที่สุด
ในทำนองเดียวกัน อัลกอริธึมการเรียงลำดับใดที่มีความซับซ้อนน้อยที่สุด ผสานการเรียงลำดับ
สำหรับสิ่งนี้ อัลกอริธึมใดดีที่สุดสำหรับการเรียงลำดับ
Quicksort
คุณจะค้นหากรณีที่เลวร้ายที่สุดและกรณีที่ดีที่สุดของอัลกอริทึมได้อย่างไร
ในแง่ที่ง่ายที่สุด สำหรับปัญหาที่ขนาดอินพุตเป็น n:
- กรณีที่ดีที่สุด = เวลาที่เร็วที่สุดในการดำเนินการ โดยเลือกอินพุตที่เหมาะสมที่สุด ตัวอย่างเช่น กรณีที่ดีที่สุดสำหรับอัลกอริธึมการเรียงลำดับคือข้อมูลที่จัดเรียงแล้ว
- กรณีที่แย่ที่สุด = เวลาที่ช้าที่สุดในการดำเนินการ โดยเลือกอินพุตเป็นตัวเลข
- กรณีเฉลี่ย = ค่าเฉลี่ยเลขคณิต