Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 48 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
48
Dung lượng
2,79 MB
Nội dung
TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE Website: http://www.ispace.edu.vn BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM MÔN HỌC: TOÁN ỨNG DỤNG Bài 1: CƠ SỞ LOGIC Bài 2: BÀI TOÁN ĐẾM VÀ BÀI TOÁN TỒN TẠI Bài 3: LÝ THUYẾT ĐỒ THỊ Bài 4: BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM Bài 5: CÂY VÀ CÁC ỨNG DỤNG TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE Website: http://www.ispace.edu.vn BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM Bài 4: BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM 1. BIỂU DIỄN ĐỒ THỊ 1.1 Danh sách liền kề 1.2 Ma trận kề 1.3 Ma trận trọng số 1.4 Ma trận liên thuộc 2. BÀI TOÁN ĐƯỜNG ĐI NGẮN NHẤT 2.1 Giới thiệu bài toán 2.2 Thuật toán Dijkstra 2.3 Thuật toán Floyd 3. CÁC THUẬT TOÁN TÌM KIẾM 3.1 Giới thiệu 3.2 Duyệt đồ thị theo chiều sâu 3.3 Duyệt đồ thị theo chiều rộng 1. BIỂU DIỄN ĐỒ THỊ 1.1 Danh sách liền kề 1.2 Ma trận kề 1.3 Ma trận trọng số 1.4 Ma trận liên thuộc 2. BÀI TOÁN ĐƯỜNG ĐI NGẮN NHẤT 2.1 Giới thiệu bài toán 2.2 Thuật toán Dijkstra 2.3 Thuật toán Floyd 3. CÁC THUẬT TOÁN TÌM KIẾM 3.1 Giới thiệu 3.2 Duyệt đồ thị theo chiều sâu 3.3 Duyệt đồ thị theo chiều rộng TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE Website: http://www.ispace.edu.vn BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM 1. Biểu diễn đồ thị 1.1 Danh sách liền kề - Danh sách liền kề là một cách biểu diễn đồ thị không có cạnh bội bằng cách liệt kê tất cả các đỉnh nối với mỗi đỉnh của đồ thị TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE Website: http://www.ispace.edu.vn BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM 1. Biểu diễn đồ thị 1.1 Danh sách liền kề Ví dụ: Danh sách liền kề của đồ thị vô hướng G Đỉnh Đỉnh liền kề 1 2 3 4 5 6 3,2 1,3,5 1,2,4 3,5,6 2,4,6 4,5 TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE Website: http://www.ispace.edu.vn BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM 1. Biểu diễn đồ thị 1.1 Danh sách liền kề Ví dụ: Danh sách liền kề của đồ thị có hướng G1 Đỉnh đầu Đỉnh cuối 1 2 3 4 5 6 2,3 2 3 4,6 5 TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE Website: http://www.ispace.edu.vn BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM 1. Biểu diễn đồ thị 1.2 Ma trận liền kề Xét đơn đồ thị vô hướng G=(V,E), với tập đỉnh V={v 1 , v 2 , ,v n } và tập cạnh E={e 1 , e 2 , , e m }. Ma trận liền kề A G của đồ thị G là ma trận 0-1 vuông cấp nxn. A G = (a ij ), trong đó: 1, nếu (v i ,v j ) là một cạnh của G 0,nếu không có cạnh nối đỉnh v i với v j a ij = TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE Website: http://www.ispace.edu.vn BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM 1. Biểu diễn đồ thị 1.2 Ma trận liền kề Ví dụ: Ma trận liền kề của đơn đồ thị vô hướng G 0 1 1 0 1 0 1 0 1 1 0 0 1 1 0 0 1 0 0 1 0 0 1 1 1 0 1 1 0 1 0 0 0 1 1 0 1 2 3 4 5 6 1 2 3 4 5 6 1 3 6 4 2 5 1- Ma trận liền kề của đơn đồ thị vô hướng G có dòng, cột đối xứng qua đường chéo 2- Tổng giá trị trên một dòng (hoặc cột) bằng số bậc của đỉnh i. TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE Website: http://www.ispace.edu.vn BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM 1. Biểu diễn đồ thị 1.2 Ma trận liền kề Ví dụ: Ma trận liền kề của đa đồ thị vô hướng G 1 3 6 4 2 0 1 1 0 0 0 1 0 2 2 0 0 1 2 0 0 1 0 0 2 0 0 1 1 0 0 1 1 0 3 0 0 0 1 3 0 1 2 3 4 5 6 1 2 3 4 5 6 5 a ij = k - tổng số cạnh nối hai đỉnh TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE Website: http://www.ispace.edu.vn BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM 1. Biểu diễn đồ thị 1.2 Ma trận liền kề Ví dụ: Ma trận liền kề của đơn đồ thị có hướng G* 1 2 5 4 3 0 1 1 0 0 0 0 0 1 1 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 1 2 3 4 5 1 2 3 4 5 Ma trận liền kề của đơn đồ thị có hướng G không có dòng, cột đối xứng TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE Website: http://www.ispace.edu.vn BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM 1. Biểu diễn đồ thị 1.2 Ma trận trọng số - Trong thực tế chúng ta thường giải quyết những tình huống như sau: từ địa điểm A đến địa điểm B trong thành phố, chúng ta chọn đường đi ngắn nhất (xét đến độ dài), có lúc lại cần chọn đường đi nhanh nhất (xét đến thời gian) và có lúc phải cân nhắc để chọn đường đi có chi phí thấp nhất, v.v - Khi chúng ta gán một giá trị số thực dương cho mỗi cạnh của đồ thị G thì chúng ta có đồ thị có trọng số. - Chúng ta có thể xem đồ thị G bất kỳ là đồ thị có trọng số mà tất cả các cạnh có trọng số bằng 1. [...]... cả các đỉnh của đồ thị BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE Website: http://www.ispace.edu.vn 2 Bài toán đường đi ngắn nhất 2.2 Thuật toán Dijkstra Ví dụ 2: Tìm đường đi ngắn nhất giữa A và W trong đồ thị G dưới đây 5 2 3 v a 2 w 3 BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM 1 z 1 1 x 5 y 2 TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE Website: http://www.ispace.edu.vn 2 Bài. .. BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE Website: http://www.ispace.edu.vn 2 Bài toán đường đi ngắn nhất 2.1 Giới thiệu bài toán Cho đơn đồ thị liên thông, có trọng số dương G=(V,E) Bài toán 1: Tìm đường đi ngắn nhất từ một đỉnh u đến mỗi đỉnh v của đồ thị G Bài toán 2: Tìm đường đi ngắn nhất giữa mỗi cặp đỉnh của đồ thị G B 1 A 5 D Z 2 8 1 6 2 3 C 10 BIỂU DIỄN ĐỒ THỊ... (T=V) BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE Website: http://www.ispace.edu.vn 2 Bài toán đường đi ngắn nhất 2.2 Thuật toán Dijkstra Ví dụ 1: Tìm đường đi ngắn nhất từ A đến mỗi đỉnh khác của đồ thị G dưới đây B 1 A 1 D 5 6 Z 2 8 2 3 C 10 BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM E TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE Website: http://www.ispace.edu.vn 2 Bài toán đường... trọng số biểu diễn đồ thị vô hướng G v2 6 v1 v2 v3 v4 v5 v6 v4 5 3 v1 6 v6 8 7 9 v3 3 v1 v5 BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM 0 3 7 ∞ ∞ ∞ v2 3 0 6 6 ∞ ∞ v3 7 6 0 ∞ 3 ∞ v4 ∞ 6 ∞ 0 8 5 v5 v6 ∞ ∞ 3 8 0 9 ∞ ∞ ∞ 5 9 0 TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE 1 Biểu diễn đồ thị 1.2 Ma trận trọng số Ví dụ: Lập ma trận trọng số biểu diễn đồ thị có hướng G BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM Website:... đỉnh đến w chứa trong tập T BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM (4,x) (∞,-) TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE Website: http://www.ispace.edu.vn 2 Bài toán đường đi ngắn nhất 2.2 Thuật toán Dijkstra Ví dụ 3: G 5 A 3 F 9 9 8 9 C BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM 1 K 9 Cho đồ thị có trọng số G 9 Tìm đường đi B 9 ngắn nhất từ 2 E A đến mỗi đỉnh 8 6 4 2 của đồ thị D 4 H 10 12 4 3 Z TRƯỜNG CAO... Bài toán đường đi ngắn nhất 2.2 Thuật toán Dijkstra Ví dụ 4: Cho đồ thị có trọng số G = (V, E), tìm đường đi ngắn nhất giữa A và H 4 B E 4 3 4 2 A b C H 2 2 3 4 4 D 6 BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM K 3 5 G TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE Website: http://www.ispace.edu.vn 2 Bài toán đường đi ngắn nhất 2.2 Thuật toán Dijkstra Ví dụ 5: Tìm đường đi ngắn nhất từ v1 đến các đỉnh khác của đồ. .. DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM v5 TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE Website: http://www.ispace.edu.vn 1 Biểu diễn đồ thị 1.2 Ma trận trọng số - Mỗi đường đi m(u,v) từ đỉnh u đến đỉnh v, có trọng số bằng tổng trọng số các cạnh mà nó đi qua - Khoảng cách d(u,v) giữa hai đỉnh u và v là đường đi có trọng số nhỏ nhất trong các đường đi từ u đến v d(u,v)=min(m(u,v)) BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN... 8 1 6 2 3 C 10 BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM E TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE Website: http://www.ispace.edu.vn 2 Bài toán đường đi ngắn nhất 2.2 Thuật toán Dijkstra Thuật toán tìm đường đi ngắn nhất từ đỉnh u đến mỗi đỉnh v của đồ thị G, được nhà toán học người Hà Lan E Dijkstra đề xuất vào năm 1959 Thuật toán thực hiện theo cách gán nhãn tại mỗi đỉnh Thuật ngữ: w(x,y) : trọng số dương... Website: http://www.ispace.edu.vn 2 Bài toán đường đi ngắn nhất 2.2 Thuật toán Dijkstra Ví dụ 1: (1,a)* 1 A (0,-)* B (6,b)* 8 1 D 5 2 C (2,a)* BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM 10 (11,e)* 6 Z 2 E (8,d)* 3 TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE Website: http://www.ispace.edu.vn 2 Bài toán đường đi ngắn nhất 2.2 Thuật toán Dijkstra Ví dụ 1: Lập bảng để giải bài toán tìm đường đi ngắn nhất Bước Tập T...TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE 1 Biểu diễn đồ thị 1.2 Ma trận trọng số BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM Website: http://www.ispace.edu.vn TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE Website: http://www.ispace.edu.vn 1 Biểu diễn đồ thị 1.2 Ma trận trọng số - Đồ thị G = (V,E) gọi là đồ thị có trọng số nếu mỗi cạnh (hay cung) e được gán với một số thực w(e), gọi . BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM MÔN HỌC: TOÁN ỨNG DỤNG Bài 1: CƠ SỞ LOGIC Bài 2: BÀI TOÁN ĐẾM VÀ BÀI TOÁN TỒN TẠI Bài 3: LÝ THUYẾT ĐỒ THỊ Bài 4: BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM. KIẾM Bài 5: CÂY VÀ CÁC ỨNG DỤNG TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE Website: http://www.ispace.edu.vn BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM Bài 4: BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM. http://www.ispace.edu.vn BIỂU DIỄN ĐỒ THỊ VÀ CÁC THUẬT TOÁN TÌM KIẾM 2. Bài toán đường đi ngắn nhất 2.1 Giới thiệu bài toán Cho đơn đồ thị liên thông, có trọng số dương G=(V,E). Bài toán 1: Tìm đường đi ngắn