Logo th.boatexistence.com

การเรียงลำดับฮีปต้องการพื้นที่เพิ่มเติมหรือไม่

สารบัญ:

การเรียงลำดับฮีปต้องการพื้นที่เพิ่มเติมหรือไม่
การเรียงลำดับฮีปต้องการพื้นที่เพิ่มเติมหรือไม่
Anonim

Heapsort คืออัลกอริธึมการจัดเรียงแบบเปรียบเทียบที่ใช้โครงสร้างข้อมูลแบบไบนารีฮีป เช่นเดียวกับการผสาน mergesort ในวิทยาการคอมพิวเตอร์ การจัดเรียงการผสาน (หรือสะกดโดยทั่วไปว่า mergesort) คือ อัลกอริธึมการจัดเรียงที่มีประสิทธิภาพ วัตถุประสงค์ทั่วไป และอิงตามการเปรียบเทียบ การใช้งานส่วนใหญ่สร้างการจัดเรียงที่เสถียร ซึ่งหมายความว่าลำดับขององค์ประกอบที่เท่ากันในอินพุตและเอาต์พุตจะเหมือนกัน https://th.wikipedia.org › wiki › Merge_sort

การเรียงลำดับการผสาน - Wikipedia

heapsort มีเวลาทำงานของ O (n log ⁡ n), O(n\log n), O(nlogn) และชอบการเรียงลำดับการแทรก, การเรียงลำดับ heapsort ในตำแหน่งดังนั้น ไม่ต้องการพื้นที่เพิ่มเติมในระหว่างการเรียงลำดับ.

ความต้องการพื้นที่หน่วยความจำของการเรียงลำดับฮีปคืออะไร

การเรียงลำดับฮีปทำงานใน O (n lg ⁡ (n)) O(n\lg(n)) O(nlg(n)) เวลา ซึ่งจะขยายและขยาย n ต่างจาก Quicksort ตรงที่ไม่มีความซับซ้อนของ O (n 2) O(n^2) O(n2) ที่แย่ที่สุด พื้นที่อย่างมีประสิทธิภาพ การเรียงลำดับฮีปจะใช้เวลา O (1) O(1) O(1) ช่องว่าง.

ทำไมความซับซ้อนของช่องว่างเรียงลำดับ O 1

2 คำตอบ. HEAP SORT ใช้ฟังก์ชัน MAX_HEAPIFY ซึ่งเรียกตัวเองว่า แต่สามารถทำได้โดยใช้ while loop แบบธรรมดา และทำให้เป็นฟังก์ชันวนซ้ำซึ่งกลับไม่มีที่ว่างและด้วยเหตุนี้ Space Complexity ของ HEAP SORT สามารถลดลงเหลือO(1).

สิ่งที่เป็นจริงเกี่ยวกับการเรียงลำดับฮีป

การเรียงลำดับฮีปคือ เทคนิคการเรียงลำดับแบบเปรียบเทียบตามโครงสร้างข้อมูล Binary Heap คล้ายกับการเรียงลำดับการเลือกที่เราค้นหาองค์ประกอบขั้นต่ำก่อนและวางองค์ประกอบขั้นต่ำที่จุดเริ่มต้น เราทำซ้ำขั้นตอนเดียวกันสำหรับองค์ประกอบที่เหลือ

ตำแหน่ง 5 เมื่อฮีปสูงสุดจะเป็นอย่างไร

5 จะเป็น ที่รูท.