อธิบายต้นไม้ไบนารี 5 ประเภท [พร้อมภาพประกอบ]

เผยแพร่แล้ว: 2020-09-16

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

โครงสร้างข้อมูลต้นไม้ทั่วไปไม่มีการจำกัดจำนวนโหนดย่อยที่สามารถเก็บได้ อย่างไรก็ตาม นี่ไม่ใช่กรณีของไบนารีทรี บทความนี้จะเรียนรู้เกี่ยวกับโครงสร้างข้อมูลต้นไม้เฉพาะ – ต้นไม้ไบนารีและ ประเภทของต้นไม้ ไบนารี

สารบัญ

โครงสร้างข้อมูลต้นไม้ไบนารีคืออะไร?

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

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

ประเภทของไบนารีทรี

คำศัพท์ที่เกี่ยวข้องกับต้นไม้ไบนารีและประเภทของต้นไม้ไบนารี

  • โหนด: มันแสดงถึงจุดสิ้นสุดในต้นไม้
  • ราก: โหนดบนสุดของต้นไม้
  • พาเรนต์: แต่ละโหนด (นอกเหนือจากรูท) ในทรีที่มีโหนดย่อยอย่างน้อยหนึ่งโหนดเรียกว่าโหนดพาเรนต์
  • ลูก: โหนดที่ตรงมาจากโหนดหลักเมื่อย้ายออกจากรูทคือโหนดย่อย
  • Leaf Node: นี่คือโหนดภายนอก พวกเขาเป็นโหนดที่ไม่มีลูก
  • โหนดภายใน: ตามชื่อที่แนะนำ โหนดภายในเหล่านี้มีโหนดย่อยอย่างน้อยหนึ่งรายการ
  • ความลึกของต้นไม้: จำนวนขอบจากโหนดของต้นไม้ถึงรากคือ
  • ความสูงของต้นไม้: คือจำนวนขอบจากโหนดถึงใบที่ลึกที่สุด ความสูงของต้นไม้ก็ถือเป็นความสูงของรากด้วย

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

ส่วนประกอบต้นไม้ไบนารี

มีสาม องค์ประกอบ รีไบนารี โหนด ไบนารีทรี ทุก โหนดมีสามองค์ประกอบที่เกี่ยวข้องกัน กลายเป็นแนวคิดที่จำเป็นสำหรับโปรแกรมเมอร์ที่จะเข้าใจ องค์ประกอบไบนารีทรีทั้งสามเหล่านี้:

  1. องค์ประกอบข้อมูล
  2. ตัวชี้ไปที่ทรีย่อยด้านซ้าย
  3. ตัวชี้ไปที่ทรีย่อยด้านขวา

ประเภทของตัวอย่างไบนารีทรี

แหล่งที่มา

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

อ่าน: คำถามคาดเดายอดนิยมและวิธีการให้ข้อมูลสำหรับวิทยาศาสตร์ข้อมูล

ประเภทของต้นไม้ไบนารี

ต้นไม้ไบนารี มีหลาย ประเภท และต้นไม้ไบนารีแต่ละ ประเภท มีลักษณะเฉพาะ ต่อไปนี้คือรายละเอียดเกี่ยวกับ ต้นไม้ไบนารีแต่ละประเภท :

1. ต้นไม้ไบนารีเต็ม

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

กล่าวอีกนัยหนึ่ง ต้นไม้ไบนารีแบบเต็มคือไบนารีทรีที่ไม่ซ้ำกัน ซึ่งทุกโหนดยกเว้นโหนดภายนอกมีลูกสองคน เมื่อมันมีลูกคนเดียว ต้นไม้ไบนารีดังกล่าวจะไม่เป็นต้นไม้ไบนารีแบบเต็ม ในที่นี้ปริมาณของโหนดปลายสุดเท่ากับจำนวนโหนดภายในบวกหนึ่งโหนด สมการจะเหมือนกับ L=I+1 โดยที่ L คือจำนวนโหนดปลายสุด และ I คือจำนวนโหนดภายใน

นี่คือโครงสร้างของต้นไม้ไบนารีแบบเต็ม:

ประเภทของไบนารีทรี - ต้นไม้ไบนารีเต็ม

2. สมบูรณ์ไบนารีทรี

ต้นไม้ไบนารีที่สมบูรณ์เป็นต้นไม้ไบนารีอีกประเภทหนึ่งที่ระดับทรีทั้งหมดเต็มไปด้วยโหนดทั้งหมด ยกเว้นระดับต่ำสุดของทรี นอกจากนี้ ในระดับสุดท้ายหรือต่ำสุดของไบนารีทรีนี้ ทุกโหนดควรอยู่ทางด้านซ้าย นี่คือโครงสร้างของต้นไม้ไบนารีที่สมบูรณ์:

ประเภทของไบนารีทรี - ต้นไม้ไบนารีที่สมบูรณ์

3. ต้นไม้ไบนารีที่สมบูรณ์แบบ

ต้นไม้ไบนารีได้รับการกล่าวขานว่า 'สมบูรณ์แบบ' หากโหนดภายในทั้งหมดมีลูกสองคนอย่างเคร่งครัด และโหนดภายนอกหรือโหนดปลายสุดทั้งหมดอยู่ที่ระดับเดียวกันหรือความลึกเท่ากันภายในต้นไม้ ต้นไม้ไบนารีที่สมบูรณ์แบบที่มีความสูง 'h' มี 2 ชั่วโมง – 1 โหนด นี่คือโครงสร้างของต้นไม้ไบนารีที่สมบูรณ์แบบ:

ประเภทของไบนารีทรี - ต้นไม้ที่สมบูรณ์แบบ

4. ต้นไม้ไบนารีที่สมดุล

ต้นไม้ไบนารีจะเรียกว่า 'สมดุล' หากความสูงของต้นไม้เป็น O (logN) โดยที่ 'N' คือจำนวนโหนด ในไบนารีทรีที่สมดุล ความสูงของทรีย่อยด้านซ้ายและด้านขวาของแต่ละโหนดควรแตกต่างกันอย่างน้อยหนึ่งรายการ AVL Tree และ Red-Black Tree เป็นตัวอย่างทั่วไปของโครงสร้างข้อมูลที่สามารถสร้างแผนผังการค้นหาไบนารีที่สมดุล นี่คือตัวอย่างของต้นไม้ไบนารีที่สมดุล:

ประเภทของไบนารีทรี - ต้นไม้ไบนารีที่สมดุล

5. เสื่อมโทรมไบนารีทรี

ต้นไม้ไบนารีกล่าวกันว่าเป็นต้นไม้ไบนารีที่เสื่อมโทรมหรือต้นไม้ไบนารีทางพยาธิวิทยาหากทุกโหนดภายในมีลูกเพียงคนเดียว แผนผังดังกล่าวคล้ายกับรายการเชื่อมโยงที่ชาญฉลาด นี่คือตัวอย่างของไบนารีทรีที่เสื่อมโทรม:

ต้นไม้ไบนารีที่เสื่อมโทรม

ประโยชน์ของต้นไม้ไบนารี

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

อ่านเพิ่มเติม: โครงสร้างการตัดสินใจในการเรียนรู้ของเครื่อง: ฟังก์ชัน การจำแนก ข้อดีและข้อเสีย

บทสรุป

ต้นไม้ไบนารีเป็นหนึ่งในต้นไม้ที่ใช้กันอย่างแพร่หลายมากที่สุดในโครงสร้างข้อมูล ต้นไม้ไบนารี แต่ละ ประเภท มีคุณสมบัติที่เป็นเอกลักษณ์ โครงสร้างข้อมูลเหล่านี้มีข้อกำหนดเฉพาะในวิทยาการคอมพิวเตอร์ประยุกต์ เราหวังว่าบทความนี้เกี่ยวกับประเภทของต้นไม้ไบนารีจะเป็นประโยชน์ upGrad เปิดสอนหลักสูตรต่างๆ ในด้านวิทยาศาสตร์ข้อมูล แมชชีนเลิร์นนิง บิ๊กดาต้า และอื่นๆ

หากคุณอยากเรียนรู้เกี่ยวกับวิทยาศาสตร์ข้อมูล ลองดูโปรแกรม Executive PG ของ IIIT-B & upGrad ใน Data Science ซึ่งสร้างขึ้นสำหรับมืออาชีพที่ทำงานและมีกรณีศึกษาและโครงการมากกว่า 10 รายการ เวิร์กช็อปภาคปฏิบัติจริง การให้คำปรึกษากับผู้เชี่ยวชาญในอุตสาหกรรม 1 -on-1 พร้อมที่ปรึกษาในอุตสาหกรรม การเรียนรู้มากกว่า 400 ชั่วโมงและความช่วยเหลือด้านงานกับบริษัทชั้นนำ

ข้อเสียของการใช้แผนผังการค้นหาแบบไบนารีคืออะไร

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

ต้นไม้ไบนารีที่สมดุลสูงมีประโยชน์อย่างไร?

การดำเนินการกับไบนารีทรีที่สมดุลนั้นมีประสิทธิภาพในการคำนวณ ต่อไปนี้เป็นเกณฑ์สำหรับต้นไม้ไบนารีที่สมดุล: ในทุกโหนดที่กำหนด ความแตกต่างที่แน่นอนระหว่างความสูงของต้นไม้ย่อยด้านซ้ายและขวาจะน้อยกว่าหนึ่ง ต้นไม้ไบนารีที่สมดุลแสดงถึงทรีย่อยด้านซ้ายของแต่ละโหนด การจัดการกับค่าสุ่มมักเป็นไปไม่ได้ในโลกแห่งความเป็นจริง และความน่าจะเป็นในการจัดการกับค่าที่ไม่สุ่ม (เช่น ตามลำดับ) นำไปสู่ความเบ้ ซึ่งเป็นกรณีที่เลวร้ายที่สุด เป็นผลให้ใช้การหมุนเพื่อให้ได้ความสูงสมดุล

ความสูงสูงสุดของต้นไม้ไบนารีคืออะไร?

ความสูงของไบนารีทรีเท่ากับความสูงของโหนดรูทในทรีไบนารีทั้งหมด หมายความว่าจำนวนขอบสูงสุดจากรากถึงโหนดใบที่ไกลที่สุดกำหนดความสูงของต้นไม้ไบนารี ในแผนผังการค้นหาแบบไบนารี ลูกด้านซ้ายของโหนดมีค่าต่ำกว่าพาเรนต์ ในขณะที่ชายด์ด้านขวามีค่าสูงกว่า เมื่อมี n โหนดในแผนผังการค้นหาแบบไบนารี ความสูงที่มากที่สุดคือ n-1 และความสูงที่น้อยที่สุดคือพื้น (log2n)