עץ מאוזן

מבנה נתונים ששומר את גובהו

עץ מאוזן הוא רעיון של מבנה נתונים מסוג עץ חיפוש בינארי, עץ חיפוש יקרא עץ מאוזן אם הגובה של העץ יהיה שווה ל- של (כאשר הוא מספר הצמתים בעץ). כלומר עבור עץ וגובה אז העץ יהיה מאוזן אם: = [1]

עץ מאוזן

דוגמה לעץ מאוזן (במקרה זה מסוג AVL המקיים את תכונת האיזון)
סיבוכיות מקום וזמן
ממוצע במקרה הגרוע
זיכרון:
O(n) O(n)
חיפוש:
O(log n) O(log n)
הכנסה:
תלוי במימוש תלוי במימוש
הוצאה:
תלוי במימוש תלוי במימוש

תכונה זו מבטיחה שניתן יהיה לחפש בעץ בסיבוכיות של במקרה הגרוע ביותר.

מהלך פעולה

עריכה

עץ מאוזן כשלעצמו איננו מבטא מבנה נתונים בעל דרך להגיע למצב זה, אלא רעיון כללי לעץ שעבורו מתקיימים הדרישות ומכך גם מתקיימת תכונת החיפוש ב - . והוא בדומה לעץ בינארי מייצג קבוצה מסוימת המקיימת תכונה מסוימת (בהתאם) עבור מבנה נתונים.

תתי עצים

עריכה

פותחו כמה מודלים מסוג עצי חיפוש בינארים המקיימים את התכונה הזו, ובניהם:

כל עץ מבצע פעולה הנקראת "איזון" על מנת להמשיך לקיים את דרישות העץ המאוזן. לדוגמה: עבור עץ AVL פעולת האיזון נקראת "גלגול".

משפטים

עריכה

רשימת משפטים הנכונים עבור כל עץ המקיים את תכונת עץ מאוזן:

  • עץ מנוון לעולם איננו יהיה עץ מאוזן אלא אם בעץ צומת אחת בלבד והיא השורש.
  • ההפרש בין הגובה של שני תתי-עצים של אותו הצומת לעולם אינו גדול מאחד.
  • אם   אז העץ הוא עץ שלם.

ראו גם

עריכה

קישורים חיצוניים

עריכה
  מדיה וקבצים בנושא עץ מאוזן בוויקישיתוף

הערות שוליים

עריכה
  1. ^ math-wiki, Trees