ABA


"צריך עזרה בלעקוב אחר אלגוריתם של עץ בינארי:"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #14046 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 14046
Grass-Boyy
חבר מתאריך 9.6.03
3603 הודעות
   13:51   10.04.07   
אל הפורום  
  צריך עזרה בלעקוב אחר אלגוריתם של עץ בינארי:  
 
   מה-עושה?(T)
(1)אם עץ_ריק(T)החזר 'שקר'
(2)אחרת, בצע
(2.1) אם עץ_ריק?(תת_עץ_שמאלי(T)) וגם עץ_ריק?(תת_עץ_ימני(T)) , אזי החזר 'אמת'
(2.2) אחרת, החזרמה-עושה?(תת_עץ_שמאלי(T)) וגם מה-עושה?(תת_עץ ימני(T))


אם הבנתי נכון האלגוריתם יתקדם עד שיגיע לעלים ואז יחזיר 'אמת '
אשמח אם תסבירו לי מה עושה האלגוריתם ובמיוחד את המשפט החזר ב2.2


                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  לפי דעתי bmaorlo  10.04.07 14:00 1
     אני דווקא חושב שהוא בודק האם כל אחד מהצדדים הוא עץ מלא FireAngel 11.04.07 23:38 2
  תחליטו לא הבנתי מיזה כלום ורקורסיה בעץ זה מההתחלה לסוף? Grass-Boyy 16.04.07 16:36 3
     החלטנו bmaorlo  16.04.07 17:14 4
  עיזבו מונחים וסיבוכים ... IcqBoy 19.04.07 05:39 5
     הסבר למשפט 2.2: IcqBoy 19.04.07 05:40 6
         כל הבעיה אצלי היא ברקורסיה אני יודע מה עושה ''וגם'' Grass-Boyy 19.04.07 16:38 7
             מכתב. IcqBoy 19.04.07 17:00 8
             תגובה להודעה הפרטית (התיבה שלך מלאה). IcqBoy 19.04.07 19:33 9
                 זה ניראה לי יותר בכיוון של עלים: Grass-Boyy 22.04.07 16:36 11
                     לא קשור ... IcqBoy 22.04.07 21:35 12
                         כן ברור, אבל המטרה של האלגוריתם לבדוק מתי אני על עלה ומ Grass-Boyy 23.04.07 14:55 13
                             איך הגעת לזה ?! IcqBoy 24.04.07 05:38 14
  תבדילו בין עץ מלא לעץ שלם... אופירוש 19.04.07 21:15 10

       
bmaorlo 
חבר מתאריך 13.4.03
4770 הודעות
   14:00   10.04.07   
אל הפורום  
  1. לפי דעתי  
בתגובה להודעה מספר 0
 
   ערכתי לאחרונה בתאריך 10.04.07 בשעה 14:01 בברכה, bmaorlo
 
התוכנית בודקת אם העץ מלא .
דוגמא לעץ לא מלא
http://upload.wikimedia.org/wikipedia/commons/thumb/f/f7/Binary_tree.svg/289px-Binary_tree.svg.png

דוגמא לעץ מלא
http://www2.eitan.ac.il/ds/search/images/image007.gif

יעני בכל הרמות יש את אותם מספר של "צמתים" כולל עלים.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
FireAngel

   23:38   11.04.07   
אל הפורום  
  2. אני דווקא חושב שהוא בודק האם כל אחד מהצדדים הוא עץ מלא  
בתגובה להודעה מספר 1
 
   ערכתי לאחרונה בתאריך 11.04.07 בשעה 23:43 בברכה, FireAngel
 
יכול להיות מצב שזה לא עץ מלא כולו, אבל צד אחד הוא עץ מלא וגם צד שני הוא עץ מלא.
עץ מלא (כולו) הוא מקרה פרטי.

קח לדוגמה את המקרה הבא:


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Grass-Boyy
חבר מתאריך 9.6.03
3603 הודעות
   16:36   16.04.07   
אל הפורום  
  3. תחליטו לא הבנתי מיזה כלום ורקורסיה בעץ זה מההתחלה לסוף?  
בתגובה להודעה מספר 0
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
bmaorlo 
חבר מתאריך 13.4.03
4770 הודעות
   17:14   16.04.07   
אל הפורום  
  4. החלטנו  
בתגובה להודעה מספר 3
 
   שאם אתה חוזר לשאלות שלך רק אחרי שבוע ועוד בגישה כזאת אנחנו לא עוזרים לך יותר.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
IcqBoy

   05:39   19.04.07   
אל הפורום  
  5. עיזבו מונחים וסיבוכים ...  
בתגובה להודעה מספר 0
 
   ההליך מקבל עץ T
ומחזיר אמת אם לכל צומת בעץ יש שני בנים או אפס בנים, אחרת מחזיר שקר.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
IcqBoy

   05:40   19.04.07   
אל הפורום  
  6. הסבר למשפט 2.2:  
בתגובה להודעה מספר 5
 
   משפט 2.2 מחזיר שולח את תת העץ הימיני להליך וגם את תת העץ השמאלי.
המטרה של השימוש במילה "וגם" היא שבשביל שההליך יחזיר אמת, כל צד צריך להחזיר אמת.
כל קומבינציה אחרת:
אמת שקר, שקר אמת, שקר שקר - תחזיר שקר.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Grass-Boyy
חבר מתאריך 9.6.03
3603 הודעות
   16:38   19.04.07   
אל הפורום  
  7. כל הבעיה אצלי היא ברקורסיה אני יודע מה עושה ''וגם''  
בתגובה להודעה מספר 6
 
   בזימונים להליך תת_עץ_ימני ותת_עץ_ימני איך זה ילך ואיך אני עוקב אחרי זה?


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
IcqBoy

   17:00   19.04.07   
אל הפורום  
  8. מכתב.  
בתגובה להודעה מספר 7
 
   אתה עוקב רקורסיבית על העץ לפי סדר הקריאה בהחזר להליך הרקורסיבי עד שמוחזר ערך כלשהו שאינו רקורסיבי (במקרה זה אמת או שקר) שמאפשר לך להמשיך הלאה בקריאות הרקורסיביות.

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

בקיצור, זה באמת קשה כאן בפורום.
מומלץ לעבוד עם חבר.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
IcqBoy

   19:33   19.04.07   
אל הפורום  
  9. תגובה להודעה הפרטית (התיבה שלך מלאה).  
בתגובה להודעה מספר 7
 
   א. תרוקן את התיבה כי אי אפשר לשלוח לך הודעות

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


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Grass-Boyy
חבר מתאריך 9.6.03
3603 הודעות
   16:36   22.04.07   
אל הפורום  
  11. זה ניראה לי יותר בכיוון של עלים:  
בתגובה להודעה מספר 9
 
   העץ יחזיר אמת כאשר הוא יעמוד על העלים..


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
IcqBoy

   21:35   22.04.07   
אל הפורום  
  12. לא קשור ...  
בתגובה להודעה מספר 11
 
   זה לא חייב לרוץ עד העלה האחרון או להגיע בכלל לעלה בשביל שיסיים את ההליך.
מספיק לצומת הראשון ברמה 0 יש רק בנים ימיניים, אז הוא כבר יחזיר שקר ויפסיק לרוץ.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Grass-Boyy
חבר מתאריך 9.6.03
3603 הודעות
   14:55   23.04.07   
אל הפורום  
  13. כן ברור, אבל המטרה של האלגוריתם לבדוק מתי אני על עלה ומ  
בתגובה להודעה מספר 12
 
   תי לא


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
IcqBoy

   05:38   24.04.07   
אל הפורום  
  14. איך הגעת לזה ?!  
בתגובה להודעה מספר 13
 
   הליך שבודק האם עלה(T) נראה כך:
האם_עלה?(T)
{ ההליך מקבל צומת בעץ ומחזיר 'אמת' אם הצומת הוא עלה, אחרת מחזיר 'שקר' }
{ הנחה: עץ T אינו ריק }
אם (עץ_ריק?(תע"ש(T)) וגם (עץ_ריק(תע"י(T))
אז החזר 'אמת'
אחרת החזר 'שקר'.

וזהו בכלל לא הליך רקורסיבי.


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

   21:15   19.04.07   
אל הפורום  
  10. תבדילו בין עץ מלא לעץ שלם...  
בתגובה להודעה מספר 0
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net