Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 232 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
232
Dung lượng
13,01 MB
Nội dung
C Biên www.hutech.edu.vn *1.2022.COS133* tailieuhoctap@hutech.edu.vn : I .I NG D N V 2.2.1 Big Theta 2.2.2 Big-O 2.2.3 Big-Omega -Theta, Big-O, Big-Omega 11 13 14 14 14 15 15 2.4.6 Hàm 15 16 16 16 while 17 19 21 23 23 23 25 26 30 II QUY 35 38 43 45 45 45 45 .46 48 4.3 DANH SÁCH 51 51 52 53 60 63 .63 64 4.4.3 65 66 77 77 .78 79 80 BÀI 5: CÂY 83 83 5.1.1 Cây 83 84 87 5.1.4 Cây có nhãn (Labeled Tree) .91 .93 96 96 99 102 (Binary Expression Trees) 102 103 106 BÀI 6: 109 109 111 III 6.3 CÁC PHÉP TOÁN TRÊN CÂY BST 112 CÂY AVL 122 122 127 128 128 Direct Addressing 129 6.5.3 Hàm 131 136 139 139 139 141 142 K SORT) 145 145 147 150 153 153 158 159 163 164 165 168 170 173 173 173 179 183 183 186 188 189 194 197 197 8.4.2 Bài tốn liên thơng 198 199 IV 8.5 BÀI TOÁN CÂY KHUNG 206 210 212 214 221 224 V NG D N - BÀI 1: - BÀI 2: - BÀI 3: - BÀI 4: - BÀI 5: CÂY - BÀI 6: - BÀI 7: - BÀI 8: Trình bày VI gia - - BÀI 1: BÀI 1: 1.1 VAI TRÒ C A C U TRÚC D LI U TRONG TIN H C phong phú th cho toán trình t b cho tốn BÀI 1: 1.2 CÁC TIÊU CHU U TRÚC D LI U - u n ch h lý - tr 1.3 TR NG HÓA D LI U 210 BÀI 8: Xét c nh , Xét c nh , C nh Xét c nh 8.6 , 211 BÀI 8: - (shortest path problem) th s ng v i tr ng s c nh Gi n dài c t ng tr ng s h t t cung N u ký hi u n dài nh nh t s t t c n nh t t n n ng s d ng ký hi u g i kho ng cách t ch dài c n Bài toán 1: Bài toán 2: n nh t t m nh ngu n Bài tốn 3: có n nh t gi khơng t n t i Ch ng h n, n u n n nh t t n 212 BÀI 8: a n b: k l n theo chu trình n e T ng quát, n t n dài c có th c g dài dài c ng h n n nh t t có th làm nh n khơng t n t i chu trình âm n n tt n Dijkstra 8.6.1 Thu t toán Dijkstra Dijkstra gi n nh t t m t nh Trong q trình th c hi n thu t tốn, v i m nh thông tin sau: - en n nh t t n false - : kho ng cách ng n nh t t nh, tr n , giá tr kh i t u iv im i 213 BÀI 8: - nh dài Thu t toán l p l n t t c c kh o sát = true v i m i ): Trong t t V i m nh v i = false, v có d[v = true nh k v i có k[v] = false, ki m tra A - F - T B F B T C F B - N u D E F - F - F - F - F B F - F - F - F A F - F - F - F A T C F C F - F C T C F 11 D F C T 11 D F E T 214 BÀI 8: Hình 8.15: Giá tr bên c nh m Chú ý: 8.6.2 nh n nh t t n Dijkstra t thu t toán Dijkstra, Nhãn c a m ng n nh t t nh g m ba thành ph n g nh ngu n n nh ng bi n Dijkstra Dijkstra_Table ( for ) t nh , t Các thành ph n s 215 BÀI 8: while nh có true nh nh t 10 11 for 12 if 13 14 D dàng nh n th y r ng Dijkstra_Table ( ) t n th i gian Dijkstra Dijkstra_Heap( for ) //kh i t while not Empty( ) // lo i b g c c a 10 11 true for if t 216 BÀI 8: 12 13 14 Decrease_Key( ) 217 BÀI 8: : không : không : : 218 BÀI 8: - Vòng l p for (dòng 1) t n th i gian - Kh i t o min-heap t n th i gian - Vòng l p while (dòng 8) l p t n th i gian - l -Min th c hi n Thao tác Decrease_Key (dịng 15) th c hi n khơng q l n l i gian T ng th i gian tính c a thu t tốn Fibonacci, h Dijkstra heap - Leonardo da Vinci c tiêu c a 219 BÀI 8: nhi u t ch c tr m c p chuyên nghi p Vì v c b o tàng c n gi i quy t tốn b o v an tồn cho b tri n lãm s c nh t vô nh Theo k di n kho ng th i gian tính Có v c p v gi n, v c gán s canh gác b hi u t n V Yêu c u: c l a ch n thuê v GALERY.txt: - u tiên ch a hai s Dòng th s Bài toán Xây d th ) - th có ho ch, cu c nh Ví d , 2 3 4 8 11 220 BÀI 8: M i cách thuê v nh ng yêu c cl im nh ng v i m nh nh Do n nh t t nh nh G toán: Dijkstra Table: Dijkstra = tiên: n = BÀI 8: Câu 1: th ng A a b Th c hi n tìm ki m theo chi th Câu 2: th ng A a b Th c hi n tìm ki m theo chi th vịng Câu 3: th ng hình sau: 221 222 BÀI 8: a b Th c hi n tìm ki m theo chi u sâu - DFS Câu 4: th ng khơng có chu trình hình sau: a b Trình bày thu t tốn xóa d Câu 5: th m t cung c s px ng nh c a g âm cung Gi th a Mơ t thu t tốn (mã gi ngơn ng ) tìm chu trình v dài nh nh t ch a cung b Câu 6: s nh sau: 223 BÀI 8: a b Kruskal Câu 7: a b Dijkstra Câu 8: Bài toán khung l n nh tr ng s c nh Trong s th t t c ng liên thông khung c a v i , Kruskal Câu 9: khung nh c nh c th nh t c ng liên thông th th v i m t h ng s v i tr ng s c nh Cây c 224 [1] [2] ch Khoa Hà [3]Michael T Goodrich, Roberto Tamassia, Michael H Goldwasser (2013) Data Structures & Algorithms in Python John Wiley & Sons, Inc [4]Kent D Lee, , Steve Hubbard (2015) Data Structures and Algorithms with Python, Luther College, Decorah [5]Rance D Necaise (2011) Data Structures and Algorithms Using Python John Wiley & Sons, Inc [6]Narasimha Karumanchi (2016) Data Structures and Algorithmic Thinking with Python CareerMonk