สารบัญ:

อัลกอริทึมการเรียงลำดับใดดีที่สุดในกรณีที่เลวร้ายที่สุด
อัลกอริทึมการเรียงลำดับใดดีที่สุดในกรณีที่เลวร้ายที่สุด

วีดีโอ: อัลกอริทึมการเรียงลำดับใดดีที่สุดในกรณีที่เลวร้ายที่สุด

วีดีโอ: อัลกอริทึมการเรียงลำดับใดดีที่สุดในกรณีที่เลวร้ายที่สุด
วีดีโอ: 10 อันดับผู้นำที่เลวร้ายที่สุดในประวัติศาสตร์โลก!! - History World 2024, อาจ
Anonim

อัลกอริทึมการเรียงลำดับ

อัลกอริทึม โครงสร้างข้อมูล เวลา ความซับซ้อน :แย่ที่สุด
เรียงลำดับด่วน Array บน2)
ผสานการเรียงลำดับ Array O(n บันทึก(n))
การเรียงลำดับฮีป Array O(n บันทึก(n))
เรียบเรียง Array O(n บันทึก(n))

ในกรณีที่เลวร้ายที่สุดประเภทใดดีที่สุด?

Quicksort มักจะเร็วที่สุด แต่ถ้าคุณต้องการช่วงเวลาที่แย่ที่สุด ลอง Heapsort หรือ Mergesort . ทั้งคู่มีเวลา O(n log n) ที่แย่ที่สุด

ในทำนองเดียวกัน อัลกอริธึมการเรียงลำดับใดที่มีความซับซ้อนน้อยที่สุด ผสานการเรียงลำดับ

สำหรับสิ่งนี้ อัลกอริธึมใดดีที่สุดสำหรับการเรียงลำดับ

Quicksort

คุณจะค้นหากรณีที่เลวร้ายที่สุดและกรณีที่ดีที่สุดของอัลกอริทึมได้อย่างไร

ในแง่ที่ง่ายที่สุด สำหรับปัญหาที่ขนาดอินพุตเป็น n:

  1. กรณีที่ดีที่สุด = เวลาที่เร็วที่สุดในการดำเนินการ โดยเลือกอินพุตที่เหมาะสมที่สุด ตัวอย่างเช่น กรณีที่ดีที่สุดสำหรับอัลกอริธึมการเรียงลำดับคือข้อมูลที่จัดเรียงแล้ว
  2. กรณีที่แย่ที่สุด = เวลาที่ช้าที่สุดในการดำเนินการ โดยเลือกอินพุตเป็นตัวเลข
  3. กรณีเฉลี่ย = ค่าเฉลี่ยเลขคณิต