משימה 11 - אופטימיזצייה שלא באמצעות רקורסיה

מנהלים: TA_nimrod, TA_Igor, TA_Adi

שלח תגובה
Fogpiskalo
הודעות: 59
הצטרף: 20:03 25/10/2009

משימה 11 - אופטימיזצייה שלא באמצעות רקורסיה

שליחה על ידי Fogpiskalo » 09:29 03/12/2009

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

נראה לי יותר הגיוני לשמור את הרקורסייה למקרים שבהם יש צורך לחזור אחורה ולשנות בחירה בליטרל, אבל לא הייתי רוצה לסכן את הציון שלי על סמך מה שנראה לי הגיוני :)

TA_Isana
הודעות: 110
הצטרף: 15:19 19/04/2009

Re: משימה 11 - אופטימיזצייה שלא באמצעות רקורסיה

שליחה על ידי TA_Isana » 08:11 04/12/2009

התכוונת ל solve? התשובה היא, על הרקורסיה של task6 יש לשמור.
אם אתה עושה שינויים קיצוניים בשביל אופטימיזציה, תדאג להוסיף פונקציה במקום זו ממשימה מוקדמת יותר. (כל פונ' בכל משימה תיבדק).
הוסף במקום לשנות. למשל, solve2.
Course TA: Tamar Pinhas

efrat
הודעות: 33
הצטרף: 00:01 25/10/2009

Re: משימה 11 - אופטימיזצייה שלא באמצעות רקורסיה

שליחה על ידי efrat » 22:59 04/12/2009

TA_Isana כתב:התכוונת ל solve? התשובה היא, על הרקורסיה של task6 יש לשמור.
אם אתה עושה שינויים קיצוניים בשביל אופטימיזציה, תדאג להוסיף פונקציה במקום זו ממשימה מוקדמת יותר. (כל פונ' בכל משימה תיבדק).
הוסף במקום לשנות. למשל, solve2.
לא הבנתי את התשובה.
בדומה ל Fogpiskalo אני רוצה ליעל את הרקורסיה ע"י כך שה substitute מתבצע לכל היחידונים בפעם אחת. בשביל זה אני עושה בתוך SOLVE (שעדיין רקורסיבית) לולאה שמציבה את כל היחידונים ואני לא בודקת את ה literal- שלהם.
עדיין בחירה של כל ליטרל שאינו יחידון מתבצעת בצורה רקורסיבית כמו שהוגדר.
האם בשביל זה צריך לעשות SOLVE2? אין בשינוי זה הבדל משמעותי מההגדרה של כיצד TASK 6 אמור לעבוד.

שלח תגובה

חזור אל “- מבוא למדעי המחשב 2010”