Chapter 20 Chemical Bonding of Mobile Cations in Superionic Conductors
C Programming chapter 20
Transcript of C Programming chapter 20
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
Cקורס תכנות בשפת
בילור שייקה "ד
יועץ ומרצה בכיר למדעי המחשב וטכנולוגית מידע
ומנהליותאקדמיות , למערכות מידע חינוכיותמומחה
1
20פרק
עצים בינאריים –מבני נתונים
Binary Trees
חידה לחימום
Shayke Bilu PhD
2
1,2,3המספרים,…,N כאשר )מסודרים בשורהN הוא מספר
(.זוגי
על שני * או -, +כל שחקן מפעיל בתורו את אחד מהאופרטורים
ורושם את התוצאה במקום שני , מספרים סמוכים כרצונו
.המספרים
המשחק מסתיים כאשר נותר מספר אחד בלבד.
השחקן הראשון מנצח -זוגי -אם המספר שנותר אחרון הוא אי .
.השחקן השני מנצח –שנותר אחרון זוגי ' ואם המס
פתחו אסטרטגיה מנצחת עבור אחד השחקנים.
SCE-Chapter-20-Binary Trees
עצים
Shayke Bilu PhD
3
יישומים רבים במחשב עושים שימוש בעצים.
כוננים )מבנה התיקיות בדיסק הקשיח מאורגן בצורת עצים , לדוגמא
, משנה-שמכילות תיקיות, משנה-שמכילות תיקיות, שמכילים תיקיות
(.'וכו
ב פרוייקט-Microsoft Visual C++ מסוגים , מכיל קבצים רבים
.המאורגנים בצורת עץ, שונים
נגדיר מושגים לגבי
ולאחר מכן, עצים כלליים
נעסוק בעיקר בסוג מסוים
של עצים הנקראים
.'עצים בינאריים'
SCE-Chapter-20-Binary Trees
עצים
Shayke Bilu PhD
4
נתון עץ(tree) ,ונגדיר עליו את המושגים הבאים: צומת(node )– איבר בעץ.
הורה(parent )– איבר קודם לצומת.
ילד(child )– איבר עוקב לצומת.
שורש(root )– צומת שאין לו הורה.
עלה(leaf )– צומת שאין לו ילדים.
אחים(siblings )– צמתים שהם ילדים לאותו הורה.
כמה עלים יש בעץ זה?
A
N M O L
K
G
C E F H I
D B
P
J
SCE-Chapter-20-Binary Trees
עצים
Shayke Bilu PhD
5
נוספותהגדרות: אם , צאצא של צומת אחרצומת הוא –( descendant)צאצא
.או אם הוא צאצא של ילדו, ילדוהוא
נשים לב שהגדרת הצאצא היא רקורסיבית.
הצומתK הוא צאצא של כמה צמתים? הצומתK הוא צאצא שלA , צאצא שלC וצאצא שלG.
A
N M O L
K
G
C
E F H I
D B
P
J
SCE-Chapter-20-Binary Trees
עצים
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
6
עוד הגדרות:
הורה קדמון(ancestor) – של צומת אחר' הורה קדמון'צומת ייקרא ,
.אם הוא הורה שלו או אם הוא הורה קדמון של הורהו
עץ -תת(sub tree )– עץ זה . צומת וצאצאיו מהווים עץ בפני עצמו
.עץ של העץ המקורי-הוא תת
בכחול הצמתים הצבועים
. עץ של העץ המקורי-תתמהווים
.Kהעץ הזה הוא הצומת -של תתשורשו
A
N M O L
K
G
C
E F H I
D B
P
J
עצים
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
7
האם הטענה הבאה נכונה או שקריתקבעו:
הצומתA בעץכל הצמתים קדמון של -הוא הורה.
עץ מציית לכמה כללים:
בעץ קיים רק שורש אחד.
לכל צומת שאינו השורש
.הורה יחידיש
הוא ( לבד מהשורש)כל צומת
.השורששל צאצא
A
N M O L
K
G
C
E F H I
D B
P
J
עץ בינארי
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
9
עץ בינארי(Binary Tree ) הוא עץ שיש בו לכל היותר שני ילדים
.את הילדים נכנה הילד השמאלי והילד הימני. לצומת
הוא שורש של עץ, אם הוא קיים, כל אחד מאלה:
שמאלי עץ -תתהילד השמאלי הוא שורשו של(left sub tree.)
ימני עץ -תתהילד הימני הוא שורשו של(right sub tree.)
נמק והסבר, מצא? העצים בשקף הבא הוא עץ בינארימי מבין.
בעץ ופחות , בעיקר בוולכן נעסוק , שימושי מ"טנהוא עץ בינארי
.כללי
עץ בינארי
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
11
רמה(level ) המסלול של צומת מסוים בעץ היא אורך
.המרחק של הצומת מהשורש –כלומר , מהשורש אליו
גדולה בעץ והרמה של כל צומת אחר , 0תמיד רמת השורש היא
.של ההורה שלומהרמה ( 1)באחד
גובה עץ(tree height ) הוא המרחק
מהשורש לעלה כלשהו של הגדול ביותר
זוהי הרמה הגבוהה –כלומר , העץ
.של העץביותר
מהו גובה העץ?
עץ בינארי
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
12
כלומר , גם עץ בינארי יכול להיות ריק, בדומה למחסנית או תור–
, עץ השמאלי-ייתכן שהתת, כאשר העץ אינו ריק. בלי צמתים כלל
.הימני או שניהם גם יחד ריקים
עצים של עלה-מה נוכל לומר על התת?
נשים לב שניתן להגדיר עץ בינארי גם באופן רקורסיבי:
(בלתי צמתים, כלומר)עץ ריק : עץ בינארי הוא
אחדשכל , ימני ושמאלי, עצים-שורש ושני תת :או
. בינאריהוא עץ מהם
אין –כלומר , עצים בינאריים אלו זרים זה לזהשני
.להם צמתים משותפים
עץ בינארי
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
13
לכתוב בקלות הרקורסיבית הזו מאפשרת ההגדרה
.עצים בינארייםשפועלים על רקורסיביים אלגוריתמים
1תרגול –בינארי עץ
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
14
הבא עברו עליו והשלימונתון העץ הבינארי:
הצמתים בעץ הוא ' מס1.
העלים בעץ הוא ' מס2.
הוא Eעץ השמאלי של -השורש של תת3.
.4W של הואC
.5C של הואB
הגובה של העץ הוא 6.
הם Eהצאצאים של 7.
בעץ הם 2הצמתים ברמה 8.
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
15
ציינו האם היא נכונה או לא, עבור כל אחת מהטענות הבאות:
•B הוא צאצא שלE ,C ו-W.
•S ו-K הם אחים.
.יש שני ילדים E-ל•
•K 3הוא ברמה.
אם הצמתים נמצאים באותה •
.הם אחיםאז , רמה
•C הוא הורה קדמון שלE ו-B.
2תרגול –בינארי עץ
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
16
עץ בינארי'( מ"טנ)נבנה ממשק עבור טיפוס הנתונים המופשט'.
ופעולת ממשק , עץ שמחזירה עץ בינארי ריק-נגדיר פעולת ממשק בשם אתחל
ומחזירה עץ חדש , עץ שמקבלת כפרמטרים שני עצים ואיבר-בשם בנה
עצים שלו הם העצים שהועברו -ושני התת, שבשורשו עומד האיבר
.כפרמטרים
נביט באלגוריתם הבא, לדוגמא:
עץ -אתחל T1
עץ -אתחל T2
עץ-בנה (T1,T2,7 ) T3
נניח ש- T4 ו-T5 הם העצים הבאים:
לאחר שמבצעים את ההוראה הבאה
?T6יראה העץ כיצד T6( ’T4,T5,’e) עץ-בנה
T1 T2
T3 7
T5 T4
T6
3תרגול –עץ בינארי
עץ בינארי
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
17
גישה –האחת : כדי לנוע על העץ נזדקק לשתי פעולות ממשק
-גישה מצומת אל התת –והאחרת , עץ השמאלי-מצומת אל התת
.עץ הימני
עץ שמאלי מקבלת עץ בינארי שאינו ריק-פעולת הממשק תת ,
. עץ השמאלי של שורשו-ומחזירה את התת
עץ ימני-באופן דומה מגדירים את פעולת הממשק תת.
באמצעות שתי פעולות ממשק אלה נוכל להגיע לכל אחד מצומתי
.העץ
עתה נרצה להוסיף פעולות ממשק שיאפשרו לקרוא את תוכנו של
. צומת בעץ ולשנות אותו
עץ בינארי
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
18
מספיק להגדיר , עץ-שכל צומת הוא שורש של תתמכיוון
. ועדכון לשורשאחזור פעולות
שורש מקבלת עץ בינארי ומחזירה את -פעולת הממשק אחזר
.תוכן שורשו
ומשנה את , שורש מקבלת עץ ואיבר-פעולת הממשק עדכן
.התוכן של השורש להיות האיבר הנתון
שתי פעולות הממשק הללו לא תהיינה מוגדרות על עץ ריק.
עץ בינארי
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
19
1נניח שנתון העץ הבינאריT הבא:
איזה עץ בינארי נקבל בעקבות ההוראה: ( T1) ימני-עץ-תת
( T1) שמאלי-עץ-תת
נניח שהעץ הבינארי ששורשו
.T2נקרא Dמכיל את הערך
איזה עץ בינארי נקבל בעקבות ההוראה: ( T2) ימני-עץ-תת
( T2) שמאלי-עץ-תת
איזה ערך נקבל בעקבות ביצוע ההוראה: ( T1) שורש-אחזר
איך ישתנה העץ בעקבות ביצוע ההוראה: ( T1,Q) שורש-עדכן
( T1, (T2) שורש-אחזר) שורש-עדכן
T1
T2
עץ בינארי
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
20
נגדיר פעולות ממשק הבודקות ומשנות את מבנהו של העץ.
הבודקת האם עץ בינארי נתון ? ריק-נגדיר פעולת ממשק בשם עץ
.הוא ריק
עץ של צומת -נגדיר שתי פעולות ממשק המחליפות תת, כמו כן
:בעץ אחר
שמאלי תקבל עץ בינארי -עץ-תת-פעולת הממשק החלףT ועץ בינארי
new_tree ,עץ השמאלי של -ותחליף את התתT ב-new_tree.
ימני מוגדרת בהתאמה-עץ-תת-פעולת הממשק החלף.
עץ בינארי
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
21
שכן אין דרך , עץ המקורי-התת" יאבד"לב כי לאחר ההחלפה נשים
עץ -לכן בדרך כלל נבצע החלפה כזו רק כאשר התת. Tלגשת אליו מתוך
.המקורי הוא ריק
נניח שנתון העץ הבינאריT1 בשם כאשר קראנו , כמקודםT2 העץ -לתת
.Dששורשו הוא
נניח גם שנתון העץ הבינאריT3 , את הערך מעלה המכיל המורכב'H' .
מה יקרה בעקבות ההוראות:
(T2,T3) שמאלי-עץ-תת-החלף
(T2,T3) ימני-עץ-תת-החלף
T1
T2
עץ בינארי
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
22
עץ-אתחל פעולה המחזירה עץ בינארי ריק
עץ השמאלי -התת, xפעולה המחזירה עץ בינארי שבשורשו האיבר
.Rעץ הימני שלו -והתת, Lשלו
.מאותחלים R-ו Lהעצים : הנחות
(L,R,x)עץ -בנה
.Tעץ השמאלי של -פעולה המחזירה את התת
.מאותחל ואינו ריק T: הנחות
(T)שמאלי -עץ-תת
.Tעץ הימני של -פעולה המחזירה את התת
.מאותחל ואינו ריק T: הנחות
(T)ימני -עץ-תת
בעץ הבינארי Tעץ השמאלי של -פעולה המחליפה את התת
new_tree.
.איננו ריק T, מאותחלים new_tree -ו Tהעצים : הנחות
שמאלי -עץ-תת-החלף
(T,new_tree)
:'עץ בינארי' מ"טנהממשק של
עץ בינארי
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
23
:'עץ בינארי'מ "הממשק של טנ
בעץ הבינארי Tעץ הימני של -פעולה המחליפה את התת
new_tree.
.איננו ריק T, מאותחלים new_tree -ו Tהעצים : הנחות
ימני -עץ-תת-החלף
(T,new_tree)
T: הנחות .Tפעולה המחזירה את האיבר שבשורשו של
.מאותחל ואיננו ריק
(T)שורש -אחזר
.xלהיות Tפעולה המשנה את התוכן של שורש
מאותחל ואיננו ריק T: הנחות
(T,x)שורש -עדכן
, הוא עץ ריק Tאם העץ הבינארי ' אמת'פעולה המחזירה
.אחרת' שקר'ו
.מאותחל T: הנחה
(T)?ריק-עץ
עץ בינארי
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
24
המקבל עץ בינארי ? נכתוב אלגוריתם בשם עלהT , אמת'ומחזיר '
.אם לא' שקר'-ו, הוא עלה Tאם
( T) עלה
:אזי, ( T) ?ריק-אם עץ
'שקר'החזר
:אחרת
וגם ( ( T) ימני-עץ-תת) ?ריק-החזר עץ
( (T) שמאלי-עץ-תת) ?ריק-עץ
אם נסמן ב-n הצמתים בעץ ' את מסT , מהי סיבוכיות זמן הריצה
?של האלגוריתם
עץ בינארי
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
25
(ימני-עץ-תת (T ) ) +סוד (שמאלי-עץ-תת (T) )
על העץ הבינארי הבא' סוד'הפעילו את האלגוריתם הרקורסיבי , .'סוד'תנו לאלגוריתם שם משמעותי במקום . וקבעו מה הוא מבצע
נסמן ב-n הצמתים בעץ הבינארי ' את מסT .
סיבוכיות האלגוריתםמהי?
עץ בינארי
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
26
המקבל כפרמטר עץ בינארי , לפניכם האלגוריתם הבאT , ומחזיר :שלם' מס
( T) סוד
:אזי, ( T) ?ריק-עץאם 0החזר
:אחרת ( ( T) ימני-עץ-תת) סוד+ (T) שורש-אחזרהחזר
( (T) שמאלי-עץ-תת) סוד+
עץ בינארי
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
27
על העץ הבינארי ' סוד'הפעילו את האלגוריתם הרקורסיביתנו לאלגוריתם שם משמעותי . וקבעו מה הוא מבצע, הבא
.'סוד'במקום
נסמן ב-n הצמתים בעץ הבינארי ' את מסT .
סיבוכיות האלגוריתםמהי?
האם אפשר היה לנסח תנאי עצירה אחר,
כך?, שימוש באלגוריתם עלההעושה
?עדיין יפתור את הבעיהשהאלגוריתם
סריקת עץ בינארי
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
29
שימושים רבים בעץ בינארי מצריכים מעבר על איברי העץ
יש , למשל, בשני האלגוריתמים האחרונים שראינו. ללא חזרות
.לבקר בכל צומת בדיוק פעם אחת
על צמתי העץ ניתן לעבור בשלושה סוגי סדרים:
סריקה בסדר תחילתי(preorder traversal)
סריקה בסדר תֹוכי(inorder traversal)
סריקה בסדר סופי(postorder traversal)
סריקת עץ בינארי
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
30
אך בכל , סוגי הסריקות מתבצעות הפעולות הבאותבשלושת
:סריקה הן מתבצעות בסדר שונה
ביקור בשורש העץ
העץ השמאלי-סריקה רקורסיבית של תת
העץ הימני-סריקה רקורסיבית של תת
הסריקה נקראת סריקה , אם הביקור בשורש מתבצע ראשון
בין שני )אם הביקור בשורש מתבצע בשלב השני . בסדר תחילי
ואם הביקור , אז זו סריקה בסדר תוכי( הזימונים הרקורסיביים
.בשורש מתבצע אחרון אז זו סריקה בסדר סופי
סריקת עץ בינארי
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
31
סריקת עץ מורכבת משלושת הצעדים האלה, כאמור:
ביקור בשורש העץ
העץ השמאלי-סריקה רקורסיבית של תת
העץ הימני-סריקה רקורסיבית של תת
"פירושו לבצע פעולה כלשהי על הצומת" ביקור בשורש העץ .
או להציג אותו , להוסיף את הערך שבצומת לצובר: לדוגמא
.'וכו, 1-להגדיל מונה ב, כפלט
סריקת עץ בינארי
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
32
לא ממשיכים , העץ אינו קיים-כאשר תת, שלוש הסריקותבכל
.לרדת בכיוון זה של העץ
בכל סריקה מבקרים בכל צומת , מבחינת סיבוכיות זמן הריצה
אם , לכן. ומבצעים עליו כמות קבועה של פעולות, פעם אחת
ביצוע סריקה זו , הצמתים בעץ הבינארי' את מס n-נסמן ב
. Θ(n)שהסיבוכיות שלהה פעולה
נדגים כיצד פועל האלגוריתם הרקורסיבי לסריקה בסדר
(.preorder traversal)תחילתי
C
H
F
A
D
G
B
E
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
סריקת עץ בינארי
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 33
C
H
F
A
D
G
B
E
A
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 34
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 35
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
2
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 36
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
2
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 37
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
2
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 38
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
2
3
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 39
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B,D
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
2
3
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 40
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B,D
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
2
3
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 41
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B,D
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
2
3
4
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 42
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B,D
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
2
3
4
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 43
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B,D
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 44
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B,D
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
2
3
4
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 45
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B,D
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
2
3
4
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 46
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B,D
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T) (1) ? ריק-עץ (T) תחילי-בסדר-סרוק אם לא (T) תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
2
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 47
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B,D
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T) (1) ? ריק-עץ (T) תחילי-בסדר-סרוק אם לא (T) תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
2
3
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 48
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B,D,E
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T) (1) ? ריק-עץ (T) תחילי-בסדר-סרוק אם לא (T) תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
2
3
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 49
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B,D,E
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T) (1) ? ריק-עץ (T) תחילי-בסדר-סרוק אם לא (T) תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
2
3
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 50
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B,D,E
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T) (1) ? ריק-עץ (T) תחילי-בסדר-סרוק אם לא (T) תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
2
3
4
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 51
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B,D,E,G
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T) (1) ? ריק-עץ (T) תחילי-בסדר-סרוק אם לא (T) תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
2
3
4
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 52
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B,D,E,G
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 53
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B,D,E,G
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
2
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 54
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B,D,E,G,C
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
2
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 55
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B,D,E,G,C
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
2
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 56
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B,D,E,G,C
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
2
3
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 57
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B,D,E,G,C,F
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
2
3
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 58
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B,D,E,G,C,F
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
2
3
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 59
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B,D,E,G,C,F
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
2
3
4
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 60
סריקת עץ בינארי
C
H
F
A
D
G
B
E
A,B,D,E,G,C,F,H
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.2) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.1) ) תחילי-בסדר-סרוק
תחילי-בסדר-סרוק (T)
(1.1) בקר בשורש
(1.3)
(T)
((T) ימני-עץ-תת ) תחילי-בסדר-סרוק
(1) ? ריק-עץ (T) אם לא
((T) שמאלי-עץ-תת (1.2) ) תחילי-בסדר-סרוק
1
2
3
4
Shayke Bilu PhD SCE-Chapter-20-Binary Trees 61
סריקת עץ בינארי
סריקת עץ בינארי
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
64
אנחנו רואים שבעקבות ביצוע סריקה בסדר תחילי על העץ
.A,B,D,E,G,C,F,Hהתקבלה סדרת הערכים , הבינארי הבא
הערך הראשון שהתקבל בסדרת הערכים(A ) זהה לערך המאוחסן
. בשורש העץ הבינארי
תמיד זה כך בעת שעושים סריקה בסדר תחיליהאם?
הערך האחרון שהתקבל בסדרת הערכים(H ) מאוחסן באחד
. מהעלים בעץ הבינארי
תמיד זה כך בעת שעושים סריקה בסדר תחיליהאם?
סריקת עץ בינארי
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
65
נתון העץ הבינארי הבא.
כתבו את סדרת הערכים המתקבלת מסריקת העץ... בסדר תחילי
בסדר תוכי
בסדר סופי.
תנו דוגמא לעץ בינארי לא ריק שעבורו
הסריקות יתנו את אותה סדרת שלושת
ערכים.
אולם הפעם , ל"תנו דוגמא כנ
כל איברי העץ צריכים בהכרח
להיות שונים זה מזה.
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
66
מציאת איבר מקסימלי בעץ בינארי:
דוגמא -רקורסיה ורשימות
20
34 4
56 14 11 5-
21- 0
1 2
21 20 58- 9
23 6
6- 12
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
67
מציאת איבר מקסימלי בעץ בינארי:
typedef struct node
{
int content;
struct node *left;
struct node *right;
} Node;
דוגמא -רקורסיה ורשימות
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
68
בינארי בעץ מקסימלי איבר מציאת:
הנחות:
.כלל בנים אין או בנים שני בדיוק יש בעץ צומת לכל1.
אחד צומת לפחות קיים ,כלומר) NULL אינו השורש2.
.(בעץ
דוגמא -רקורסיה ורשימות
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
69
int findmax (Node *node)
{
int left, right, maxlr, max;
if (node->left==NULL)
return node->content;
left=findmax(node->left);
right=findmax(node->right);
maxlr= left >right ? left:right;
max= maxlr>node->content ? maxlr:node->content;
return max;
}
דוגמא -רקורסיה ורשימות
תרגילים
Shayke Bilu PhD SCE-Chapter-20-Binary Trees
70
כתבו אלגוריתם המקבל עץ בינארי המכיל מספרים ממשיים ,
.2ומקטין את ערכו של כל איבר בעץ פי
ומחזיר , שלמים' כתבו אלגוריתם המקבל עץ בינארי המכיל מס
.הצמתים שבהם מופיעים ערכים זוגיים' את מס
ומציג כפלט את כל הערכים , כתבו אלגוריתם המקבל עץ בינארי
.המופיעים בעלים
ומחזיר , כתבו אלגוריתם המקבל עץ בינארי
.את סכום ערכי הצמתים שיש להם שני בנים