Danh mục

Thực hành Toán rời rạc - Chương 8: Đồ thị dạng cây

Số trang: 14      Loại file: pdf      Dung lượng: 586.12 KB      Lượt xem: 28      Lượt tải: 0    
10.10.2023

Phí tải xuống: 4,000 VND Tải xuống file đầy đủ (14 trang) 0
Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Thực hành Toán rời rạc - Chương 8: Đồ thị dạng cây. Chương này cung cấp cho học viên những nội dung về: đồ thị cây (Tree); một số tham khảo về hỗ trợ của gói Networkx để xử lý mạng đồ thị và cây; bài toán ứng dụng 2 - bài toán tích lũy dòng chảy – câu chuyện ngập khi mưa tại đô thị;... Mời các bạn cùng tham khảo!
Nội dung trích xuất từ tài liệu:
Thực hành Toán rời rạc - Chương 8: Đồ thị dạng cây Bộ môn Khoa học Dữ liệu THỰC HÀNH TOÁN RỜI RẠC TÀI LIỆU PHỤC VỤ SINH VIÊN NGÀNH KHOA HỌC DỮ LIỆU Nhóm Giảng viên biên soạn: TS. Hoàng Lê Minh – Khưu Minh Cảnh – Hoàng Thị Kiều Anh – Lê Ngọc Thành – Phạm Trọng Nghĩa –Nguyễn Công Nhựt – Trần Ngọc Việt – Đỗ Đình Thủ – Nguyễn Hữu Trí Nhật – Lê Công Hiếu – Nguyễn Thị Thanh Bình – Nguyễn Thái Hải – Huỳnh Thái Học và các Giảng viên khác TP.HCM – Năm 2020 Thực hành Toán rời rạc Trang 1 Bộ môn Khoa học Dữ liệu MỤC LỤC CHƯƠNG 8: ĐỒ THỊ DẠNG CÂY ............................................................................................................. 3 1. Đồ thị cây (Tree) ................................................................................................................................... 3 1.1. Định nghĩa, tính chất ..................................................................................................................... 3 1.2. Định lý cơ bản về cây ................................................................................................................... 3 1.3. Cây khung và cây khung tối thiểu................................................................................................. 3 2. Một số tham khảo về hỗ trợ của gói Networkx để xử lý mạng đồ thị và cây: ...................................... 7 3. Bài toán ứng dụng 2: Bài toán tích lũy dòng chảy – Câu chuyện ngập khi mưa tại đô thị ................... 8 3.1. Giới thiệu mô hình tích lũy dòng chảy đơn dòng (single flow), thuật toán D8 ............................ 8 3.2. Bước chuẩn bị cho việc xử lý...................................................................................................... 10 3.3. [Đọc thêm] Cài đặt thuật toán D8 ............................................................................................... 11 Thực hành Toán rời rạc Trang 2 Bộ môn Khoa học Dữ liệu CHƯƠNG 8: ĐỒ THỊ DẠNG CÂY Mục tiêu: - Tìm hiểu về đồ thị cây: định nghĩa, tính chất, các loại cây, các thuộc tính của cây. - Các thuật toán xử lý cây: duyệt cây, cây khung và cây khung tối thiểu. - Giới thiệu ứng dụng cây trong thực tiễn xử lý bằng Python. - Các thao tác lệnh bổ sung với gói NetworkX. Nội dung chính: 1. Đồ thị cây (Tree) Bài này giới thiệu về một loại đồ thị đặc biệt, đó là cây. Cây là một dạng đồ thị đặc biệt nên nhìn chung cây sẽ áp dụng được tất cả các thuật toán xử lý của đồ thị như tìm đường đi ngắn nhất,… Ngoài ra, cây có riêng những tính chất và các bài toán riêng. 1.1. Định nghĩa, tính chất - Cây (tree): là một đồ thị liên thông và không có chu trình. - Rừng (forest): một rừng có cây. Mỗi cây là một đồ thị liên thông, do đó, rừng là đồ thị có thành phần liên thông. Mỗi thành phần liên thông là 1 cây. - Cây có hướng là một đồ thị có hướng. Trong cây có hướng, một đỉnh được gọi là rễ (root) nếu từ đó có thể có đường đi đến đến các đỉnh còn lại. 1.2. Định lý cơ bản về cây Những điều sau đây là tương đương: i. G là cây. ii. Giữa 2 cặp đỉnh bất kỳ có 1 dây chuyền duy nhất nối chúng với nhau. iii. G liên thông tối tiểu, nghĩa là nếu xóa đi 1 cạnh của G thì không còn liên thông nữa. iv. Thêm một cạnh vào giữa 2 đỉnh không kề nhau thì ta sẽ có một chu trình sơ cấp duy nhất. v. G liên thông và có n-1 cạnh. vi. G không có chu trình và có n-1 cạnh. 1.3. Cây khung và cây khung tối thiểu Cây khung hay còn gọi là cây tối đại (cây bao trùm/chùm): Cho một đồ thị = ( , ), một đồ thị cây = ( , ) được gọi là cây khung của nếu là đồ thị con của đồ thị : có mọi đỉnh của đồ thị G và ⊂ . Cây khung nhỏ nhất: Xét G có trọng số cạnh, khi đó, nếu tổng các cạnh của cây là nhỏ nhất thì đó là cây khung của đồ thị G. Cây khung nhỏ nhất được minh họa với các ứng dụng như: xây dựng mạng lưới ống nước/dây điện ngắn nhất tại các thành phố hoặc khu vực dân cư. Thực hành Toán rời rạc Trang 3 Bộ môn Khoa học Dữ liệu Từ một đồ thị , hiện nay có nhiều thuật toán để xác định cây khung nhỏ nhất như: Prim, Kruskal, Boruvka. Trong đó, phổ biến là 2 thuật toán Prim và Kruskal như sau: - Prim: tiếp cận chiều sâu (depth search) với ý tưởng bước đầu tiên chọn điểm vì và cạnh ngắn nhất từ đỉnh đó để “loang” rộng ra các đỉnh còn lại chưa được xét của đồ thị cùng với cạnh ngắn nhất mà không lặp thành vòng. - Kruskal: tiếp cận chiều rộng (width search) với ý tưởng bước đầu tiên chọn cạnh ngắn nhất của đồ thị trước vì nhận định: cạnh ngắn nhất của đồ thị luôn nằm trong Hì ...

Tài liệu được xem nhiều: