שאלה 4, עצים בינארים: צריך עזרה בהבנת הנקרא

צפה בנושא הקודם צפה בנושא הבא Go down

שאלה 4, עצים בינארים: צריך עזרה בהבנת הנקרא

הודעה  avi on Sat May 09, 2009 12:24 am

אני לא מבין משהו מה הכוונה המסלול הארוך ביותר בין שני צמתים? מה מוגדר כצומת, left של אב יהיה צומת אחד והright זה השני?
אם הבנתי נכון את השאלה אז ב:


הפונקציה תחזיר 2 ???
avatar
avi
by ref
by ref

מספר הודעות : 12
Join date : 13.04.09

צפה בפרופיל המשתמש

חזרה למעלה Go down

לא אחינו

הודעה  Admin on Sat May 09, 2009 8:14 am

במקרה כזה הפונקציה תחזיר 3
avatar
Admin
Admin

מספר הודעות : 62
Join date : 08.04.09
Age : 32

צפה בפרופיל המשתמש http://csmta.forumhebrew.com

חזרה למעלה Go down

Re: שאלה 4, עצים בינארים: צריך עזרה בהבנת הנקרא

הודעה  avi on Sat May 09, 2009 2:50 pm

אוקי,, אבל אני צריך הסבר למה.
avatar
avi
by ref
by ref

מספר הודעות : 12
Join date : 13.04.09

צפה בפרופיל המשתמש

חזרה למעלה Go down

Re: שאלה 4, עצים בינארים: צריך עזרה בהבנת הנקרא

הודעה  Admin on Sun May 10, 2009 1:58 am

המסלול מהצומת העליונה אל התחתונה (השמאלית = הימנית) במקרה שלנו, הוא המסלול הארוך ביותר, הוא בעל 3 קשתות מחוברות, וזהו גם קוטרו.
avatar
Admin
Admin

מספר הודעות : 62
Join date : 08.04.09
Age : 32

צפה בפרופיל המשתמש http://csmta.forumhebrew.com

חזרה למעלה Go down

כיוון לפתרון

הודעה  talmidonet on Sun May 10, 2009 3:35 am



שימו לב שניתן להבחין בין שני סוגים של מסלול ארוך ביותר. יתכן שהמסלול הארוך ביותר מתחיל בשורש ומגיע עד לעלה; ויתכן שהמסלול הארוך ביותר מתחיל בעלה ומסתיים בעלה, אך אינו עובר בשורש.

לכן יש בכל שלב של הרקורסיה להעביר גם את אורך המסלול הארוך ביותר, וגם את אורך המסלול הארוך ביותר שמתחיל בשורש. כך ניתן יהיה במידת הצורך לחבר ביחד שני מסלולים שמתחילים מהשורש של שני תתי העצים ולקבל את המסלול הארוך ביותר.

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

י
avatar
talmidonet
by ref
by ref

מספר הודעות : 12
Join date : 10.05.09
Age : 31
מיקום : תל אביב

צפה בפרופיל המשתמש http://talmido.net/

חזרה למעלה Go down

צפה בנושא הקודם צפה בנושא הבא חזרה למעלה


 
Permissions in this forum:
אתה לא יכול להגיב לנושאים בפורום זה