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

thankful

New member
שאלה ממבחן ישן במבני נתונים ומבוא לאלגוריתמים

ענה על הסעיף הבא ב "תמיד ניתן למימוש" או "לא תמיד ניתן למימוש" . אם השבת "תמיד ניתן למימוש" - תן אלגוריתם . אם השבת "לא תמיד ניתן למימוש" - נמק . הסעיף : ניתן לבנות עץ חיפוש בינארי *כלשהו* מסדרה *כלשהי* בסיבוכיות זמן (O(n . מדוע התשובה הבאה שגויה (נשמעת לי שטותית לחלוטין) ? תשובה : לא תמיד ניתן למימוש . נימוק : לו היה קיים אלגוריתם שבונה עץ חיפוש בינארי כלשהו מסדרה כלשהי בסיבוכיות זמן O של N , אלגוריתם זה היה ממיין את סדרת המספרים בזמן ליניארי , וכידוע לא ניתן לבצע מיון כזה (המבוסס על השוואות בלבד בין איברי הסדרה) בזמן ליניארי . בברכה , ליאור .
 

thankful

New member
שאלתך מרמזת לכך שהתשובה ה "שגויה" נכונה בסופו

של דבר ?
 

thankful

New member
ולאחר התבוננות מעמיקה בתשובה

גם כן ? האם אתה משוכנע ב - 100% שתשובתי נכונה ? ליאור .
 

vinney

Well-known member
כן

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

carlos22

New member
אם אתה בונה עץ

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

thankful

New member
קיבלתי כבר אישור משני אנשים (VINNEY ועוד מישה

ו) , תודה . (כבר הספקתי לשכוח מהשאלה !
)
 
למעלה