שאלה טכנית למתרגל האחראי בנוגע לעבודה 3 משימה 11

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

שלח תגובה
jinj
הודעות: 9
הצטרף: 12:41 23/11/2009

שאלה טכנית למתרגל האחראי בנוגע לעבודה 3 משימה 11

שליחה על ידי jinj » 12:44 23/11/2009

בעיקרון סיימתי את עבודה 3 במדעי המחשב והגעתי לשלב של הבונוס.

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

השאלה הנשאלת היא האם את השינויים בשלב הבונוס צריך לבצע בעבודה בפועל או רק לפרט עליהם בקובץ הטקסט המצורף?

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

Re: שאלה טכנית למתרגל האחראי בנוגע לעבודה 3 משימה 11

שליחה על ידי TA_Isana » 12:58 23/11/2009

אם האסטרטגיה לשיפור שלך מציעה ביטול של הרקורסיה, אציע את האפשרויות הבאות.
1. ליצור עותק של הקובץ SatSolver.java שלך לאחר שסיימת עם חלק א' ולשמור אותו בצד.
לבצע את השינויים של האופטימיזציות על עותק נוסף (למשל SatSolverOpt.java) ולהפעיל אותו בבדיקות. (יש לשנות את שם המחלקה בכל מקום ).
תוכל להגיש את SatSolver וגם את SatSolver2 ותסביר מה עשית ואיך להפעיל בקובץ.
2. (מומלצת בעיני) ליצור פונקציה חדשה ב - SatSolver (שתיקרא למשל solveOpt ) ותכיל את השיפורים.
הוסף בדיקה הבודקת את solveOpt בקובץ SatTester, והגש גם את SatTester בנוסף. גם את הבדיקה של הצביעה אפשר לשנות שתפעיל solveOpt.

בשתי פונקציות נפרדות -- תוכל לקבל נקודות על הרקורסיה וגם להציע שיפור שאינו כולל רקורסיה.
Course TA: Tamar Pinhas

שלח תגובה

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