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

การแสดงหน่วยความจำของ Binomial Heap ใน C++


ต้นไม้ทวินามคืออะไร

ทวินามทรีเป็นโครงสร้างข้อมูลทรีแบบเรียงลำดับ สมมติว่า B0 ประกอบด้วยโหนดเดียวในขณะที่ทรีทวินามที่แสดงเป็น Bk ประกอบด้วยทรีทวินามสองต้นคือ Bk-1 ซึ่งเชื่อมโยงเข้าด้วยกัน รากของต้นไม้ทวินามต้นหนึ่งเป็นลูกที่อยู่ทางซ้ายสุดของรากของต้นไม้ทวินามอื่น ต้นไม้ทวินามส่วนใหญ่จะใช้สำหรับการวิเคราะห์พื้นฐานและทางเทคนิคของสินทรัพย์หรือหุ้น

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

Binomial Heap คืออะไร

ทวินามฮีปเป็นโครงสร้างข้อมูลที่ประกอบขึ้นจากการรวมกันของต้นไม้ทวินามหลายต้น

คุณสมบัติของไบนารี heap H are-:

  • ต้นไม้ทวินามแต่ละต้นใน H นั้นเรียงลำดับกันแบบกอง ดังนั้นคีย์ของโหนดจึงมากกว่าหรือเท่ากับคีย์ของพาเรนต์

  • มีต้นไม้ทวินามอย่างน้อยหนึ่งต้นใน H ซึ่งรากมีระดับที่กำหนด

ตัวอย่างของไบนารีฮีปคือ-:

การแสดงหน่วยความจำของ Binomial Heap ใน C++

การแสดงหน่วยความจำของโหนดทวินามฮีป

แต่ละโหนดของไบนารีฮีปจะแสดงในหน่วยความจำที่มี 5 ฟิลด์ นั่นคือ

  • ตัวชี้ผู้ปกครอง -:มันจะเก็บที่อยู่ของโหนดหลักเพื่อที่จะเชื่อมโยงกับโหนดอื่นในโครงสร้างฮีปแบบไบนารี

  • คีย์-: มันจะเก็บข้อมูลหรือคีย์ที่โหนดถืออยู่

  • ปริญญา-: มันจะระบุระดับหรือระดับของโหนดไบนารีฮีป

  • ตัวชี้ลูกด้านซ้าย-: มันจะเก็บที่อยู่ของเด็กที่อยู่ด้านซ้ายทันทีเพื่อเชื่อมต่อกับโหนดด้านซ้ายถ้ามี

  • ตัวชี้พี่น้อง-: มันจะเก็บที่อยู่ของน้องทันที

การแสดงหน่วยความจำของ Binomial Heap ใน C++

ตัวอย่าง-:

1. การแสดงหน่วยความจำโหนดเดียว

การแสดงหน่วยความจำของ Binomial Heap ใน C++

2. การแสดงหน่วยความจำโหนดหลักและโหนดลูก

การแสดงหน่วยความจำของ Binomial Heap ใน C++

3. การแสดงหน่วยความจำโหนดพี่น้อง

การแสดงหน่วยความจำของ Binomial Heap ใน C++