7 7 3 7 7 13 12 6 9 34 3 8 גרפים ממשקלים גרף ממשקל הוא גרף עם משקל...
Post on 19-Dec-2015
239 views
TRANSCRIPT
7
7
3
77
13
12
6
9
34
3
8
גרפים ממשקלים
הוא גרף עם משקל לכל קשתגרף ממשקל הצמתים של הגרף וקשתותיו הןכלהוא עץ שצמתיו הם עץ פורש
קשתות הגרף
7
7
3
77
13
12
6
9
34
3
8
גרפים ממשקלים
הוא גרף עם משקל לכל קשתגרף ממשקל הוא עץ שצמתיו הם כל הצמתים של הגרף וקשתותיו הןעץ פורש
קשתות הגרף
7
7
12
634
גרפים ממשקלים
הוא גרף עם משקל לכל קשתגרף ממשקל הוא עץ שצמתיו הם כל הצמתים של הגרף וקשתותיו הןעץ פורש
קשתות הגרף
7
7
12
634
גרפים ממשקלים
הוא גרף עם משקל לכל קשתגרף ממשקל הוא עץ שצמתיו הם כל הצמתים של הגרף וקשתותיו הןעץ פורש
קשתות הגרף
7
7
12
634
גרפים ממשקלים
הוא גרף עם משקל לכל קשתגרף ממשקל הוא עץ שצמתיו הם כל הצמתים של הגרף וקשתותיו הןעץ פורש
קשתות הגרף
7
7
12
634
גרפים ממשקלים
הוא גרף עם משקל לכל קשתגרף ממשקל הוא עץ שצמתיו הם כל הצמתים של הגרף וקשתותיו הןעץ פורש
קשתות הגרף
הוא עץעץ פורש מינימום פורש שסכום משקלי קשתותיו
מינימלי.
6+7+7+34+12 = 66
גרפים ממשקלים
הוא גרף עם משקל לכל קשתגרף ממשקל הוא עץ שצמתיו הם כל הצמתים של הגרף וקשתותיו הןעץ פורש
קשתות הגרף
הוא עץעץ פורש מינימום פורש שסכום משקלי קשתותיו
מינימלי.
6+7+7+34+12 = 66
7
7
3
77
13
12
6
9
34
3
8
גרפים ממשקלים
הוא גרף עם משקל לכל קשתגרף ממשקל הוא עץ שצמתיו הם כל הצמתים של הגרף וקשתותיו הןעץ פורש
קשתות הגרף
הוא עץעץ פורש מינימום פורש שסכום משקלי קשתותיו
מינימלי.
6+7+7+34+12 = 66
7
7
3
77
13
12
6
9
34
3
8
גרפים ממשקלים
הוא גרף עם משקל לכל קשתגרף ממשקל הוא עץ שצמתיו הם כל הצמתים של הגרף וקשתותיו הןעץ פורש
קשתות הגרף
הוא עץעץ פורש מינימום פורש שסכום משקלי קשתותיו
מינימלי.
6+7+7+34+12 = 66
7
7
3
77
13
12
6
9
34
3
8
7+3+6+7+12 = 35
7
7
3
77
13
12
6
9
34
3
8
Primאלגוריתם
7
7
3
77
13
12
6
9
34
3
8
קשת אדום-כחולקשת עם משקל מינימלי
Primאלגוריתם
7
7
3
77
13
12
6
9
34
3
8
Primאלגוריתם
7
7
3
77
13
12
6
9
34
3
8
Primאלגוריתם
7
7
3
77
13
12
6
9
34
3
8
Primאלגוריתם
7
7
3
77
13
12
6
9
34
3
8
Primאלגוריתם
7
7
3
77
13
12
6
9
34
3
8
Primאלגוריתם
7
37
63
Primאלגוריתם
7
37
63
Primאלגוריתם
7 3
7
63
Primאלגוריתם
7 3
7
63
3+7+7+3+6 = 26
Primאלגוריתם
7
7
3
77
13
12
6
9
34
3
8
1
3
6
5
4
2
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,2,7
1,3,3
1,6,6
1,5,34
ערימת מינימוםHeap
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,2,7
1,3,3
1,6,6
1,5,34
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,2,7
1,3,3
1,6,6
1,5,34
3,1,3
3,2,7
3,4,3
3,5,13
3,6,9
לא כשת אדום-כחול
Delete
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,2,7
1,6,6
1,5,34
3,1,3
3,2,7
3,4,3
3,5,13 3,6,9
קשת אדום-כחול
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,2,7
1,6,6
1,5,34
3,1,3
3,2,7
3,4,3
3,5,13 3,6,9
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,2,7
1,6,6
1,5,34
3,1,3
3,2,7
3,4,3
3,5,13 3,6,9
4,2,8
4,3,3
4,5,12
Delete
לא קשת אדום-כחול
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,2,7
1,6,6
1,5,34
3,1,3
3,2,7 3,5,13 3,6,9
4,2,8
4,3,3
4,5,12
Delete
לא קשת אדום-כחול
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,2,7
1,6,6
1,5,34
3,2,7
3,5,13 3,6,9
4,2,8
4,3,3
4,5,12
Delete
לא קשת אדום-כחול
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,2,7
1,6,6
1,5,34
3,2,7
3,5,13 3,6,9
4,2,8
4,5,12
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,2,7
1,6,6
1,5,34
3,2,7
3,5,13 3,6,9
4,2,8
4,5,12
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,2,7
1,6,6
1,5,34
3,2,7 3,5,13 3,6,9
4,2,8
4,5,12
6,1,6
6,3,9
6,5,7
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,2,71,5,34
3,2,7 3,5,13 3,6,9
4,2,8
4,5,12
6,1,6
6,3,9
6,5,7
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,2,7
1,5,34
3,2,7
3,5,13 3,6,9
4,2,8
4,5,12
6,3,9
6,5,7
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,2,7
1,5,34
3,2,7
3,5,13 3,6,9
4,2,8
4,5,12
6,3,9
6,5,7
אדומים6, ו- 4, 1שימו לב: מכוון ש- Heapלא חייבים להכניס אותם ב-
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,2,7
1,5,34
3,2,7
3,5,13 3,6,9
4,2,8
4,5,12 6,3,9
6,5,7
5,2,7
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,2,7
1,5,34
3,2,7
3,5,13 3,6,9
4,2,8
4,5,12
6,3,9
5,2,7
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,2,7
1,5,34
3,2,7
3,5,13 3,6,9
4,2,8
4,5,12
6,3,9
5,2,7
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,2,7
1,5,34
3,5,13 3,6,9
4,2,8
4,5,12 6,3,9
5,2,7
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,2,7
1,5,34 3,5,13 3,6,9
4,2,8
4,5,12
6,3,9
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,5,34 3,5,13
3,6,9
4,2,8
4,5,12
6,3,9
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,5,34
3,5,13
3,6,9
4,5,12
6,3,9
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,5,34
3,5,134,5,12
6,3,9
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,5,34 3,5,13
4,5,12
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,5,34
3,5,13
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
1,5,34
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
2
3
4
6
5
2,7 3,3 6,6
1,7 3,7 4,8 5,7
1,3 2,7 4,3 5,13 6,9
2,8 3,3 5,13
1,34 2,7 4,12 6,7
1,6 3,9 5,7
5,34
רשימות סמיכיותעם משקלות
1
3
6
5
4
2
7
7
3
77
13
12
6
9
34
3
8
1
3
6
5
4
2 7
3
7
63
1
3
6
5
4
2 7
3
7
63
1
3
6
5
4
2 7
3
7
63
1
3
6
5
42
7 3
7
63
7 3
7
63
3+7+7+3+6 = 26
Insert/DeleteMin in Heap log m = O(log n)
O(m log n)
שיפור נוסף אפשרי.O(m + n log n)בעזרת ערימות פיבונצי ניתן לשפר לזמן
.O(m log*n)לגרפים דלילים ניתן להגיע אף לסיבוכיות זמן
למתקדמים: ניתן לקבל אלגוריתם רנדומאלי,.O(m) בתוחלת זמן
nmnimn i /2log:min),( )(
,O m n m ליתר דיוק זמן
כאשר
. 24פרטים בספר הלימוד פרק