תכנות דינאמי Flashcards
מהם השלבים לפתרון בעיה באמצעות תכנון דינאמי?
על איזה מבנה פועל אלגוריתם בלמן-שכבות?
מה האלגוריתם עושה?
מהו אוסף תת הבעיות של אלגוריתם בלמן-שכבות?
מהי נוסחת הרקורסיה?
אוסף תת הבעיות:
עבור כל קודקוד v, נמצא את המסלול הקל ביותר מs (=קודקוד ההתחלה) לv.
נשים לב שעבור t (=קודקוד הסיום), זאת בדיוק הבעיה שאנו מנסים לפתור.
נוסחת הרקורסיה: בתמונה.
מהו זמן הריצה של אלגוריתם בלמן-שכבות?
(O(E+V
מהו מיון טופולוגי בגרף מכוון חסר מעגלים?
זהו מיון של קודקודי הגרף כך ש:
אם יש צלע מקודקוד u לקודקוד v, אזי ברשימת הקודקודים הממויינת, u יופיע לפני v.
באיזה סוג אלגוריתם נשתמש כדי למצוא תת מחרוזת משותפת ארוכה ביותר (תמ”א) לשתי מחרוזות?
אלגוריתם דינאמי.
מהו אוסף תתי הבעיות של בעיית תת מחרוזת משותפת ארוכה ביותר לשתי המחרוזות:
X = x1, x2, … , xn
Y = y1, y2, … , ym
?
מהי נוסחת הרקורסיה של בעיית תת מחרוזת משותפת ארוכה ביותר לשתי המחרוזות:
X = x1, x2, … , xn
Y = y1, y2, … , ym
?
איך נשחזר מהטבלה את הפתרון של בעיית תת מחרוזת משותפת ארוכה ביותר לשתי המחרוזות:
X = x1, x2, … , xn
Y = y1, y2, … , ym
?
מהו זמן הריצה של האלגוריתם למציאת תת מחרוזת משותפת ארוכה ביותר לשתי המחרוזות:
X = x1, x2, … , xn
Y = y1, y2, … , ym
?
איך נוכיח את נכונות האלגוריתם למציאת תת מחרוזת משותפת ארוכה ביותר לשתי המחרוזות:
X = x1, x2, … , xn
Y = y1, y2, … , ym
?
מהי טענת האינדוקציה?
מהו בסיס האינדוקציה?
מהו צעד האינדוקציה?
בשאלה שבתמונה:
- מה תהיה החלוקה לתתי בעיות?
- מה תהיה נוסחת הרקורסיה.
- איך נמלא את הטבלה ונחלץ ממנה את הפתרון?
יהי גרף מכוון עם פונקציית משקל על הצלעות.
איך נמצא את הדרך עם המשקל הנמוך ביותר בין כל זוג קודקודים בגרף?
נשתמש באלגוריתם פלוייד-וורשל.
האלגוריתם מחזיר טבלה כך שבתא הi,j כתוב משקל המסלול הקל ביותר מi לj.
מהו זמן הריצה של אלגוריתם פלוייד-וורשל?
O(|V|3)
איך נמצא את המרחק המינימלי בין קודקוד v בגרף לכל שאר הקודקודים בגרף?
נשתמש באלגוריתם בלמן פורד או באלגוריתם דייקסטרה.
אלגוריתם בלמן-פורד הוא אלגוריתם הפועל על גרף מכוון וממושקל, ומשמש למציאת המסלול הקל ביותר מצומת אחד מסוים אל כל אחד משאר הצמתים בגרף.
בכך, אלגוריתם זה משיג אותה תוצאה כמו אלגוריתם דייקסטרה, אך בניגוד לאלגוריתם דייקסטרה הוא עובד גם כאשר הגרף מכיל קשתות בעלות משקל שלילי.
יתר על כן, אם הגרף מכיל מעגל שסכום משקלי קשתותיו שלילי (מה שגורם לכך שאין תשובה מוגדרת לשאלת המסלולים הקצרים) הוא מסוגל לזהות זאת ולהתריע על כך.