מבני נתונים
תשע״ג
-
הרצאה 1 ←
מערכים ורשימות
מימושים -
תרגול 1 ←
רשימות
סימוני O ו- theta -
הרצאה 2 ←
אמורטיזציה
תורים ומחסניות -
תרגול 2 ←
אמורטיזציה - מונה בינארי:
ספירה ישירה
שיטת הבנק
שיטת הפוטנציאל -
הרצאה 3 ←
מילונים
עצים
עצי חיפוש -
תרגול 3 ←
פתירת משוואות רקורסיה:
הצבה (לנחש פתרון
Brute Force
שיטת המאסטר -
הרצאה 4 ←
עצי חיפוש בינאריים - אנליזה
עצי אדום שחור -
תרגול 4 ←
מעבר על עץ
שאלות עם עצים -
הרצאה 5 ←
עץ אש - אנליזת מחיקה מהעץ
order statistics בעץ אש
finger rbTrees
splay trees
B-Trees -
תרגול 5 ←
עצים אדומים-שחורים
-
הרצאה 6 ←
ערימות מינימום
אלגוריתם דייקסטרה (Dijkstra)
מימוש של ערימה
בניית ערימה ממערך
B-Trees - ניתוח זמן ריצה
מעבר מעצי 2-4 לעצים אדומים שחורים -
תרגול 6 ←
ערימות מינימום
-
הרצאה 7 ←
עצים בינומיים
ערימות בינומיות
ערימות בינומיות עצילות
ערימות פיבונאצ'י והתחלה של ניתוח זמן ריצה -
תרגול 7 ←
ערימות בינומיות
ערימות פיבונאצ'י -
הרצאה 8 ←
ערימות פיבונאצ'י - סוף ניתוח זמן ריצה
בעיית המיון
אלגוריתמי מיון
quick sort - ניתוח
הוכחת חסם תחתון על ה worst case -
תרגול 8 ←
מיונים
הוכחת חסמים תחתונים
רדוקציות לבעיית המיון -
הרצאה 9 ←
מיון - חסם תחתון על ה average case
מיונים מהירים
כאשר המספרים ידועים מראש - count sort
כאשר המספרים הם מתוך תחום נתון - Bin sort
כאשר הקלט הוא מחרוזות באורך נתון - Radix sort
מיון קלט כמעט ממוין
Insertion sort
Finger RBTrees
selection - מציאת האיבר ה k במערך
רעיונות לפתרון (מיון/מציאת k מינימומים/שימוש בערימה/שימוש בערמה קטנה)
select רנדומלי (בהסתמך על בחירת pivot, כמו ב quick sort)
הוכחת חסם מקרה ממוצע על select רנדומלי -
תרגול 9 ←
מיונים מהירים
רדוקציות לחיפוש בינארי -
הרצאה 10 ←
Select בזמן ליניארי (worst case)
select דינאמי - order statistics
מילון ללא יחס סדר:
וקטור ביטים
Hash
Hash:
hash פתוח - רשימות מקושרות
hash סגור - rehash/cuckoo
hash פתוח - ניתוח ביצועים
hash יוניפורמי
משפחות אוניברסליות -
תרגול 10 ←
selection
סטטי - select ליניארי
דינאמי - order statistics -
הרצאה 11 ←
מציאת קבוצה אוניברסלית
האש סגור, ניתוח זמן
הגדלת טבלת ה hash
Perfect Hashing
מבוא ל union-find -
תרגול 11 ←
Hash
-
הרצאה 12 ←
union-find:
union by rank
path comression
הרכבת פונקציות
פונקציית אקרמן (Ackermann)
פונקציית ה tower ופונקציית ה *log
ניתוח זמן ריצה, הוכחת זמן amortized של *log לפעולה -
תרגול 12 ←
union-find