מספר שאלות לגבי עבודה 3

מנהל: TA_Isana

שלח תגובה
sheknabs
הודעות: 31
הצטרף: 17:03 12/11/2009

מספר שאלות לגבי עבודה 3

שליחה על ידי sheknabs » 21:15 12/04/2010

1. לא הבנתי האם השיטה insert במחלקה BinarySearchNode צריה להחזיר את הnode החדש שהוסף או את הnode שהוספנו לו בן ימני/שמאלי עם המידע שהפונקציה מקבלת?
כלומר למשל בדוגמא שנמצאת בקובץ העבודה אם אני מכניס את 27 האם הפונקציה תחזיר את הNode עם [26,26] או את הNode שהוספתי?

2. האם מותר להוסיף שיטה ציבורית בAVLSearchNode של remove ולהתשמש בה מתוך AVLSearchTree?
אם לא. אז האם בכלל ניתן להוסיף שיטות ציבוריות למחלקות?

3. האם חובה לעשות את האלגוריתמים של הפונקציות כפי שנלמדו בכיתה או שמותר לשנות מעט את הלוגיקה אם זה מקל על ההבנה?

4. פונקציית insert בAVLSearchNode קוראת לפונצקייה insert בBinarySearchNode אבל הפונקציה הזו בBinarySearchNode הינה רקורסיבית מה שגורם למצב בו כאשר הפונקציה קוראת לעצמה בגלל הפולימורפיזם נקראת הפונקציה של הAVLSearchNode. האם זה בסדר לכתוב פונקציה עם שם אחר בBinarySearchNode ופשוט שinsert תקרא לה?

תודה מרש.

TA_Yoni
הודעות: 236
הצטרף: 13:44 18/10/2009

Re: מספר שאלות לגבי עבודה 3

שליחה על ידי TA_Yoni » 21:50 12/04/2010

1. כתוב במפורש - " על שיטה זו להחזיר את הצומת אליו נכנס האובייקט החדש " . כאשר מכניסים איבר לעץ למעשה יוצרים צומת חדשה איתו. תחזיר את הצומת הזה.

2. ניתן להוסיף שיטות protected . אין צורך בשיטות public (כל העבודה שלכם באותה תיקיה)

3. מה שבא לכם

4. מה שבא לכם - לעמוד בזמני ריצה ולא לשכפל קוד . רמז: יש שאלה דומה כבר בפורום .
המתרגל יוני

sheknabs
הודעות: 31
הצטרף: 17:03 12/11/2009

Re: מספר שאלות לגבי עבודה 3

שליחה על ידי sheknabs » 22:29 12/04/2010

תודה.

ועוד שאלה: האם יכול להיות שעשיתם טעות במטודה readFromFile שבMain בהרצת delete?
כי ע"פ איך שהגדרתם את הפונקצייה היא צריכה לקבל את המפתח אבל אתם שולחים לה Task ובגלל זה אצלי לפחות הבדיקות של ההסרות לא עוברות.

TA_Yoni
הודעות: 236
הצטרף: 13:44 18/10/2009

Re: מספר שאלות לגבי עבודה 3

שליחה על ידי TA_Yoni » 09:26 13/04/2010

בקריאה לשיטה remove מקבלים Task.
המתרגל יוני

sheknabs
הודעות: 31
הצטרף: 17:03 12/11/2009

Re: מספר שאלות לגבי עבודה 3

שליחה על ידי sheknabs » 20:27 14/04/2010

אוקיי תודה.

פשוט זה לא מה שמשתמע מהכתוב במסמך של העבודה:
public void remove(Comparable toRemove)
הוצאת איבר אשר מפתחו שווה ערך ל . toRemove חובה לממש את שיטה זו ב O(log(n))

TA_Yoni
הודעות: 236
הצטרף: 13:44 18/10/2009

Re: מספר שאלות לגבי עבודה 3

שליחה על ידי TA_Yoni » 08:01 15/04/2010

בגלל זה עדכנו את העבודה
המתרגל יוני

sheknabs
הודעות: 31
הצטרף: 17:03 12/11/2009

Re: מספר שאלות לגבי עבודה 3

שליחה על ידי sheknabs » 08:39 15/04/2010

ראיתי. תודה!

שלח תגובה

חזור אל “- מבני נתונים 2010”