Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม

ความซับซ้อนของการดำเนินการ Interval Heap


คิวลำดับความสำคัญแบบดับเบิ้ลเอนด์ (DEPQ) หรือช่วงเวลาฮีปมีการดำเนินการดังต่อไปนี้ -

isEmpty()

ฟังก์ชันนี้ใช้เพื่อตรวจสอบว่า DEPQ ว่างเปล่าและคืนค่าเป็น จริง หากว่างเปล่า

ขนาด()

ฟังก์ชันนี้ใช้เพื่อส่งคืนจำนวนองค์ประกอบทั้งหมดที่มีอยู่ใน DEPQ

getMin()

ฟังก์ชันนี้ใช้เพื่อส่งคืนองค์ประกอบที่มีลำดับความสำคัญต่ำสุด

getMax()

ฟังก์ชันนี้ใช้เพื่อส่งคืนองค์ประกอบที่มีลำดับความสำคัญสูงสุด

ใส่(z)

ฟังก์ชันนี้ใช้เพื่อแทรกองค์ประกอบ z ใน DEPQ

removeMin()

ฟังก์ชันนี้ใช้เพื่อลบองค์ประกอบที่มีลำดับความสำคัญน้อยที่สุดและส่งคืนองค์ประกอบนี้

removeMax()

ฟังก์ชันนี้ใช้เพื่อลบองค์ประกอบที่มีลำดับความสำคัญสูงสุดและส่งคืนองค์ประกอบนี้

  • การดำเนินการ isEmpty(), size(), getMin() และ getMax() ใช้ O(1) ในแต่ละครั้ง;
  • put(z), removeMin() และ removeMax() ใช้ O(log n) แต่ละรายการ;
  • การเริ่มต้นฮีปช่วงเวลาองค์ประกอบ n จะใช้เวลา O(n)