ฮีปขั้นต่ำ-สูงสุดถูกกำหนดให้เป็นทรีไบนารีที่สมบูรณ์ซึ่งมีระดับต่ำสุด (หรือคู่) และสูงสุด (หรือคี่) สลับกัน ระดับคู่จะแสดงเช่น 0, 2, 4 เป็นต้น และระดับคี่จะแสดงเป็น 1, 3, 5 เป็นต้น
เราจะพิจารณาในประเด็นต่อไปว่าองค์ประกอบรากอยู่ที่ระดับแรก นั่นคือ 0
ตัวอย่างฮีปต่ำสุด-สูงสุด
คุณสมบัติของฮีปต่ำสุด-สูงสุด
- แต่ละโหนดในฮีปต่ำสุด-สูงสุดเชื่อมโยงกับสมาชิกข้อมูล (ปกติเรียกว่าคีย์) ซึ่งค่าจะถูกนำไปใช้ในการคำนวณลำดับของโหนดในฮีปต่ำสุด-สูงสุด
- องค์ประกอบรากคือองค์ประกอบขั้นต่ำในฮีปต่ำสุด-สูงสุด
- หนึ่งในสององค์ประกอบในระดับที่สอง ซึ่งเป็นระดับสูงสุด (หรือคี่) คือองค์ประกอบสูงสุดในฮีปต่ำสุด-สูงสุด
- ให้ y เป็นโหนดใดๆ ในฮีปต่ำสุด-สูงสุด
- หาก y อยู่ที่ระดับต่ำสุด (หรือแม้กระทั่ง) ดังนั้น y.key จะเป็นคีย์ที่เล็กที่สุดในบรรดาคีย์ทั้งหมดในทรีย่อยที่มีรูท y
- หาก y อยู่ในระดับสูงสุด (หรือคี่) y.key จะเป็นคีย์สูงสุดในบรรดาคีย์ทั้งหมดในทรีย่อยที่มีรูท y
- โหนดในระดับต่ำสุด (สูงสุด) จะแสดงเป็นโหนดขั้นต่ำ (สูงสุด)
max-min heap ถูกกำหนดให้ตรงข้ามกับ min-max heap; ในฮีปดังกล่าว ค่าสูงสุดจะถูกเก็บไว้ที่รูท และค่าต่ำสุดจะถูกเก็บไว้ที่ลูกของรูทตัวใดตัวหนึ่ง