בהצלחה לכל הנבחנים מחר במדעי המחשב :) - איך היה? תגובות ע"מ 4 - עמוד 5 - כללי - HWzone פורומים
עבור לתוכן
  • צור חשבון

בהצלחה לכל הנבחנים מחר במדעי המחשב :) - איך היה? תגובות ע"מ 4


MasterDK

Recommended Posts

  • תגובות 133
  • נוצר
  • תגובה אחרונה

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


{
boolean left=false;
boolean right=false;
if (t.getLeft()==null&&t.getRight()==null)
return true;
if (t.getLeft()!=null)
left=t.getLeft().getInfo()==t.getInfo()&&onePath(t.getLeft());
if (t.getRight()!=null)
right=t.getRight().getInfo()==t.getInfo()&&onePath(t.getRight());
return(left||right);
}
	public static boolean onePath(BinTree t)

שוב, משהו רואה פה בעיה?

זו שאלה מספר 3.

אם הבנתי נכון את מה שכתבת (בחיים לא כתבתי בג'אווה, אבל C אני יודע לגמרי והתחביר די דומה. אבל אני נבחן בכלל בפסקל :D), בקריאה הרקורסיבית היית צריך לעשות או ולא וגם.

והיו שם 1001 מקרי קצה (7 אם לדייק).

קודם כל, תנאי העצירה הוא האם זה עלה.

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

אח"כ צריך לבדוק מצב שבו יש רק תע"י ובסוף אם יש רק תע"ש.

ובסוף בסוף אם אף אחד לא מתקיים, תחזיק שקר ^_^

עשיתי גם את 2, ממש קלילה, ובתורת המחשב עשיתי את האוטומטים.. מעניין אם מישהו עשה אנליזה נומרית, בכלל לא ניסו ללמד אותנו את זה :smile1:

קישור לתוכן
שתף באתרים אחרים

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

אם העץ לא ריק, והפונקציה פונה אל הבנים שלו: בהנחה שהם לא ריקים (שהוא לא עלה), לא צריך לבדוק אם העץ ריק.

קישור לתוכן
שתף באתרים אחרים

מישהו עשה את שאלה 19, או כמו שאני אוהב לכנות אותה, "השאלה מגיהנום"?

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

הנה קישור לספר שממנו למדנו:

http://sites.huji.ac.il/science/stc/center/groups/OOP2006/JAVA-BOOK.htm

קישור לתוכן
שתף באתרים אחרים

אם הבנתי נכון את מה שכתבת (בחיים לא כתבתי בג'אווה, אבל C אני יודע לגמרי והתחביר די דומה. אבל אני נבחן בכלל בפסקל :D), בקריאה הרקורסיבית היית צריך לעשות או ולא וגם.

והיו שם 1001 מקרי קצה (7 אם לדייק).

קודם כל, תנאי העצירה הוא האם זה עלה.

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

אח"כ צריך לבדוק מצב שבו יש רק תע"י ובסוף אם יש רק תע"ש.

ובסוף בסוף אם אף אחד לא מתקיים, תחזיק שקר ^_^

עשיתי גם את 2, ממש קלילה, ובתורת המחשב עשיתי את האוטומטים.. מעניין אם מישהו עשה אנליזה נומרית, בכלל לא ניסו ללמד אותנו את זה :smile1:

מקווה שאתה מתלוצץ, כי לגבי העיניין הזה אני בטוח!

אני עשיתי OR בין שמאל לימין, אבל חייב שגם הבן יקים את התנאי אחרת מה זה שווה?

יכול להיות שהבן לא, אבל הצאצא כן, ואז העסק יחזיר לי אמת, וזה טעות.

אם העץ לא ריק, והפונקציה פונה אל הבנים שלו: בהנחה שהם לא ריקים (שהוא לא עלה), לא צריך לבדוק אם העץ ריק.

אתה לא יכול לסמוך על זה שהבנים שלו לא ריקים, כי אז העץ לא יגמר אף פעם!

לכל צומת יהיה בנים.

אתם לא חושבים רקורסיבית.

אני מסכים איתך שלא צריך לבדוק אם העץ ריק, גם אני לא עשיתי את זה בגלל שזה היה כתוב בשאלה, אבל יכול להיות מאוד שהוא עלה!

קישור לתוכן
שתף באתרים אחרים

אתה לא יכול לסמוך על זה שהבנים שלו לא ריקים, כי אז העץ לא יגמר אף פעם!

לכל צומת יהיה בנים.

אתם לא חושבים רקורסיבית.

אני מסכים איתך שלא צריך לבדוק אם העץ ריק, גם אני לא עשיתי את זה בגלל שזה היה כתוב בשאלה, אבל יכול להיות מאוד שהוא עלה!

קישור לתוכן
שתף באתרים אחרים

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

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

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

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

קישור לתוכן
שתף באתרים אחרים

לפי מה שאני הבנתי, סוד1 מחזיר את ההפרש בין מספר הספרות של שני המספרים.

וסוד2 מחזיר את ההפרש הכי גבוה במערך בין 2 איברים סמוכים(מהאיבר הk עד הסוף)

כה גם אני עשיתי ככה...רק במילים אחרות. כתבתי שסוד1 בודק בכמה ספרות יש למס' אחד יותר מהשני...

קישור לתוכן
שתף באתרים אחרים

מקווה שאתה מתלוצץ, כי לגבי העיניין הזה אני בטוח!

אני עשיתי OR בין שמאל לימין, אבל חייב שגם הבן יקים את התנאי אחרת מה זה שווה?

יכול להיות שהבן לא, אבל הצאצא כן, ואז העסק יחזיר לי אמת, וזה טעות.

אני חושב שפשוט לא הבנתי נכון, אבל ממה שכן הבנתי, בקיראה הרקורסיבית, אמרת שאם הערך של הבן הימני/שמאלי=ערך השורש וגם וגם תת בתת העץ הימני/שמאלי יש מסלול. אז זה בעצם כן נכון (WTF?!). טוב אני די מבובל כאן :smile1:

אם העץ לא ריק, והפונקציה פונה אל הבנים שלו: בהנחה שהם לא ריקים (שהוא לא עלה), לא צריך לבדוק אם העץ ריק.

אתה חייב לבדוק את המקרה שבו יש לעץ רק תת עץ אחד (ימני או שמאלי). אחת הפעולה אחזר_שורש תתקע. היא מניחה שעץ שהיא מקבלת הוא לא עץ ריק, וגם בדוגמאות הם הביאו מקרים שבהם יש רק תת עץ אחד.

קישור לתוכן
שתף באתרים אחרים

אני חושב שלא עשינו אותו דבר

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

אני מדבר על שאלה שלוש, השאלה עם "מסלול-אחיד".

אני חושב שפשוט לא הבנתי נכון, אבל ממה שכן הבנתי, בקיראה הרקורסיבית, אמרת שאם הערך של הבן הימני/שמאלי=ערך השורש וגם וגם תת בתת העץ הימני/שמאלי יש מסלול. אז זה בעצם כן נכון (WTF?!). טוב אני די מבובל כאן :smile1:

כן, זה מה שעשיתי. :cool2:

דרך אגב, משהו הבין למה הם הדגישו שהמספרים שלו הם 1 או 2?

למה זה טוב?

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

קישור לתוכן
שתף באתרים אחרים

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

אצלנו זה היה 3 יחידות פסקל (יחידה יסודות ו2 יחידות מדעי המחשב א') ועכשיו עיצוב תוכנה ומודלים חישוביים סה"כ 5 יחידות

רק פסקל למדנו בסה"כ ולא עשינו שום פרוייקט

קישור לתוכן
שתף באתרים אחרים

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.


×
  • צור חדש...