מבני נתונים ואלגוריתמים - מחברת קורס/מבני נתונים/עצי חיפוש בינריים: הבדלים בין גרסאות בדף

תוכן שנמחק תוכן שנוסף
Atavory (שיחה | תרומות)
Atavory (שיחה | תרומות)
שורה 246:
 
 
נניח שלצומת אין בנים, או שלצומת יש רק בן יחיד. כדי להוציא את הצומת מהעץ, פשוט מחברים את אביו (אם יש לו כזה) עם בנו (אם יש לו כזה).
הצומת מהעץ, פשוט מחברים את אביו (אם יש לו כזה) עם בנו (אם יש לו
כזה).
 
 
שורה 255 ⟵ 253:
 
 
[[תמונה:binary_search_splice.png|מרכז|100%|splice בעץ חיפוש בינרי.]]}}
 
 
הפסוודו-קוד הבא מממש זאת. (רובו מטפל במקרי קצה מעצבנים, כגון המקרה שבו הצומת המוצא הוא השורש.)
המקרה שבו הצומת המוצא הוא השורש.)
 
 
שורה 266 ⟵ 263:
# The node (nd) must not have two children.
Splice(t, nd)
1 child = nd.l_child == Nil ? nd.r-child : nd.l-child
 
2 parent = nd.parent
 
3 if child != Nil
4 child.parent = parent
 
5 if parent == Nil
6 t.root = child
7 return
8 if nd.key</source>
 
===האלגוריתם===