การเข้าใจความซับซ้อนของเวลาและพื้นที่ของอัลกอริทึมในการเรียงลําดับนั้น จําเป็นอย่างยิ่งในการเลือกวิธีการที่เหมาะสมสําหรับโปรแกรมโดยเฉพาะ ความซับซ้อนเหล่านี้จะช่วยประเมินประสิทธิภาพและการใช้งานทรัพยากรของอัลกอริทึมภายใต้เงื่อนไขที่แตกต่างกัน

ความซับซ้อนของเวลาในการเรียงลําดับอัลกอริทม

ความซับซ้อนของเวลา จะวัดว่าเวลาทํางานของอัลกอริทึมเพิ่มขึ้นอย่างไร โดยมีขนาดของข้อมูลป้อนข้อมูล โดยปกติจะแสดงโดยใช้สัญลักษณ์ ขนาดใหญ่ O

ตัวอย่างเช่น ฟองสบู่ เรียงลําดับมีความซับซ้อนของเวลาที่แย่ที่สุด ของ [FLT: 0] O(n^2) ทําให้ความซับซ้อนของข้อมูลขนาดใหญ่ ในทางกลับกัน การผนวก การจัดเรียงมีความซับซ้อนที่เลวร้ายที่สุดของ O (N) log) ซึ่งสามารถวัดได้ง่ายขึ้น

ความซับซ้อนของช่องว่างของการเรียงลําดับอัลกอริท

ความซับซ้อนของอวกาศ เกี่ยวข้องกับปริมาณของหน่วยความจําเพิ่มเติม อัลกอริทึมต้องการเทียบกับขนาดที่ป้อนเข้าไป อัลกอริทึมบางตัวเรียงลําดับจากสถานที่ โดยใช้พื้นที่ที่พิเศษน้อยที่สุด ในขณะที่คนอื่นต้องการอาร์เรย์เพิ่มเติม หรือโครงสร้างข้อมูล

ตัวอย่างเช่น การจัดเรียงด่วนโดยทั่วไปมีความซับซ้อนของ [FLT: 0] O(logn) เนื่องจากโทรศัพท์แบบวนรอบ ขณะที่การเรียงรวมต้องการ [FT:2] O(n) (FLT:3] ช่องว่างสําหรับระบบชั่วคราว

ตัว อย่าง ของ การ คัด เลือก อัล กอ ทิก

  • เรียงลําดับฟองสบู่
  • เรียงลําดับการเลือก
  • เรียงลําดับการแทรก
  • รวมประเภท
  • เรียงลําดับแบบเร็ว