Algorithms Course 7 Greedy Approach 2 Outlines u
- Slides: 55
演算法課程 (Algorithms) Course 7 貪婪法則 Greedy Approach
2 ▓ Outlines u 本章重點 n n n Dynamic Programming v. s. Greedy Approach Concepts of Greedy Approach Minimum Spanning Trees The Greedy Approach versus Dynamic Programming: The Knapsack Problem Dijkstra Algorithm for Single-pair Shortest Path Problem
8
10 u [Note]: n n n S中的V等於G中的V 若G 不連通 (not connected),則G無Spanning Tree connected G中的Spanning Tree不只一個 若|V|=n,則|F| = n-1 同一G中的任二個不同之Spanning Tree不一定有交集的邊存在 不一定有交集的邊 ¡ Ex: A B E C D A A B E C D
13 u 試利用Kruskal’s Algo. 求下圖的Minimum Spanning Tree
15
18 u 試利用Prim’s Algo. 求下圖的Minimum Spanning Tree
19 Sol: Y V-Y {1} {2, 3, 4, 5} {1, 2} {3, 4, 5} {1, 2, 3} {4, 5} {1, 2, 3, 5} {4} {1, 2, 3, 4, 5} {} ∵Y = V, ∴ Stop Set F
20 Time Complexity: O(n 2)
23 u Knapsack n n Problem可分成兩種問題型態: Fractional Knapsack Problem: Problem ¡ 物品可被切割,亦即取物時可取部份 ¡ 採用Greedy Approach 0/1 Knapsack Problem: Problem ¡ 物品不可被切割,亦即取物時得取全部 ¡ 採用Dynamic Programming
29 ※練習範例※ u Now, you are inside a Buffet restaurant. Assume that your stomach can only accept food with maximum size M and there are n kinds of food with sizes and values as (s 1, v 1), (s 2, v 2), …, (sn, vn), in the restaurant. Design an algorithm to find the highest value of food that you can eat. Only need to demonstrate your algorithm based on the case: M = 22 and 4 kinds of food with (3, 4), (4, 5), (6, 9), (8, 13). n Hint: this is equivalent to the knapsack problem. (91年交大 資 所) Ans: 取食物的順序: 4, 3, 1, 2,其餘部份請自行說明。
31
35 假設有一背包W = 5,考慮以下的Items,求0/1 Knapsack最佳解: u 範例: Sol: n P Item 重量 利潤 O 1 1 $6 O 2 2 $10 O 3 3 $12 先建立P[0…n, 0…W]和label[0…n, 0…W]兩個Table 0 1 2 3 4 5 label 0 0 1 1 2 2 3 3 0 1 2 3 4 5
39 Item O 1 O 2 O 3 重量 1 2 3 n 利潤 $6 $10 $12 if i = 0 or k = 0 if k < w i ì 0 ï P[i, k] = í P[i - 1, k] ï Max(p + P[i - 1, k - w ], P[i - 1, k]) î i i if k ³ w i Step 4: 當 i = 3,表示有 3 個物品可以拿 (即: O 1 、 O 2 與O 3)。 ¡ ∵k = 3 ,表示負重3; 此時: P 0 1 2 3 4 5 label 0 1 2 3 4 5 0 0 0 0 ø ø ø 1 0 6 6 6 1 ø {1} {1} {1} 2 0 6 10 16 16 16 2 ø {1} {2} 3 0 6 10 16 {1, 2} 3 ø {1} {2} {1,
40 Item O 1 O 2 O 3 重量 1 2 3 利潤 $6 $10 $12 ì 0 ï P[i, k] = í P[i - 1, k] ï Max(p + P[i - 1, k - w ], P[i - 1, k]) î i i ¡ ∵k = 4 ,表示負重4; 此時: ¡ ∵k = 5 ,表示負重5; 此時: if i = 0 or k = 0 if k < w i if k ³ w i P 0 1 2 3 4 5 label 0 1 2 3 4 5 0 0 0 0 ø ø ø 1 0 6 6 6 1 ø {1} {1} {1} 2 0 6 10 16 16 16 2 ø {1} {2} 3 0 6 10 16 18 22 {1, 2} 3 ø {1} {2} {1, {2,
41
45
48 1 0 S 1 狀態 頂點選擇 u Initial DIST 2 3 4 5 6 7 8 10 0 1 0 1 0 01 1 0 1 1 2 3 4 5 6 7 8 5 1500 0 250 1 6 1250 0 250 1150 1650 2 7 2450 1250 0 250 1150 1650 3 4 2450 1250 0 250 1150 1650 4 8 3350 2450 1250 0 250 1150 1650 5 3 3350 3250 2450 1250 0 250 1150 1650 6 2 3350 3250 2450 1250 0 250 1150 1650 7 1 3350 3250 2450 1250 0 250 1150 1650
50 u Dijkstra’s Algorithm觀念圖解: v DIST[w] DIST[u] w Cost[u][w] u
- What is greedy
- N/a greedy
- Huffman code greedy algorithm
- Fractional knapsack problem
- Interval scheduling greedy
- Greedy divide and conquer dynamic programming
- Greedy bank method
- Straightforward algorithm
- Greedy approach
- A haunted house by virginia woolf analysis
- Kairos talk outlines
- Outline of the book of acts by chapter
- Sermon outlines on the shunammite woman
- Visible outlines
- Ksf outlines
- Foley v classique coaches
- Exegetical sermon outlines
- Anima outline
- Acute suppurative appendicitis
- What is coordination in outlining
- Mucoepidermoid carcinoma histology
- Four main components for effective outlines
- Cjis security policy
- Two types of outlines
- A clear concise document which outlines preventive
- Lesson outline for teaching
- Cmmi model outlines
- Pyelonephritis
- A business plan is a document that outlines
- Mun position paper outline
- Half brick wall vs one brick wall
- Course title and course number
- Chaine parallèle muscle
- Deep learning approach and surface learning approach
- Datagram network and virtual circuit network
- Cognitive approach vs behavioral approach
- Cognitive approach vs behavioral approach
- Approach meaning in research
- Fine grained screening
- Diagram for traditional approach
- Multiple approach avoidance conflict
- Thomas putnam accusations quotes
- Activity selection problem greedy algorithm
- Qallow
- Greedy algoritmus
- Greedy search
- Greedy method in data structure
- Captain kassim
- Greedy vs dynamic programming
- Greedy algorithm
- Greedy algorithm
- Greedy chicken
- Rezolvare
- Kassim and the greedy dragon
- Greedy algorithm time complexity
- Jurnal algoritma greedy