20407 מבני נתונים ומבוא לאלגוריתמים
20407 מבני נתונים ומבוא לאלגוריתמים1
6 נקודות זכות ברמה רגילה
שיוך: מדעים / מדעי המחשב
ידע קודם דרוש: הקורסים מבוא למדעי המחשב ושפת Java2 (או יסודות התכנות בשפת פייתון) 6, מתמטיקה בדידה: תורת הקבוצות, קומבינטוריקה ותורת הגרפים. ידע קודם מומלץ: הקורסים חשבון אינפיניטסימלי 1 (20474),3 אלגברה לינארית 1 (או אלגברה ליניארית לתלמידי מדעים),4 הסתברות ומבוא לסטטיסטיקה למדעי המחשב (או מבוא לסטטיסטיקה ולהסתברות למדעים)5
פיתוח הקורס: פרופ' דוד הראל, פרופ' יהודית גל-עזר, פרופ' גיא קורצרס, ד"ר ג'ק וינשטין; תלמה מוקדי, חוה ניומן (עריכה)
מטרת הקורס היא הכרת המושגים והשיטות הבסיסיים הנוגעים לפיתוח אלגוריתמים ומבני נתונים. בקורס יוגדרו קריטריונים פורמליים לניתוח של פתרון אלגוריתמי לבעיה נתונה.
ספר הקורס
הקורס מבוסס על הספר מבוא לאלגוריתמים (תרגום: ת' אלמוג וע' סופר; האוניברסיטה הפתוחה, 2008) שהוא תרגום של 14 הפרקים הראשונים (בתוספת נספחים) בספר:
T.H. Cormen, C.E. Leiserson, R.L. Rivest & C. Stein, Introduction to Algorithms, 2nd ed. (MIT Press, 2000)
לספר הקורס נלווה מדריך למידה.
נושאי הקורס
-
גידול של פונקציות
-
נוסחאות נסיגה
-
הוכחות נכונות
-
מיונים
-
מציאת האיבר ה-i הקטן ביותר
-
הערמה ושימושיה
-
מבני נתונים בסיסיים
-
פונקציות גיבוב
-
עצי חיפוש בינריים
-
עצים אדומים-שחורים
-
הרחבת מבני נתונים
לצד התרגילים העיוניים, הסטודנטים נדרשים להגיש גם מטלות תכנותיות.
1 להשלכות על צבירת נ"ז בשל חפיפה עם קורס(ים) אחר(ים), ראו פירוט החפיפה.
2 או שני הקורסים מבוא למדעי המחשב ושפת Java א (20453, 3 נ"ז) ומבוא למדעי המחשב ושפת Java ב (20454, 3 נ"ז). מומלץ ללמוד את הקורס מבני נתונים ומבוא לאלגוריתמים (20407) בסמוך ללימוד קורס המבוא.
3 או הקורס חשבון אינפיניטסימלי 1 (20106), שאינו מוצע עוד.
4 הקורס נקרא בעבר אלגברה לינארית לתלמידי מדעי הטבע.
5 דרושה בשלות מתמטית הנקנית על ידי לימוד הקורסים המתמטיים.
6 או יסודות התכנות בשפת Java שאינו מוצע עוד.