Giáo án ppt chuyên đề KHMT 12 kết nối: Bài 15 Thực hành duyệt đồ thị theo chiều sâu
Giáo án ppt chuyên đề Tin học khoa học máy tính 12 kết nối tri thức: Bài 15 Thực hành duyệt đồ thị theo chiều sâu. Bài giảng thiết kế hiện đại, sáng tạo giúp tiết học thêm phần thú vị, giúp giáo viên tiết kiệm thời gian nhưng vẫn có thể ứng dụng công nghệ vào công tác giảng dạy.
Nội dung chi tiết











... Còn nữa ...
CHÀO CẢ LỚP! CHÀO MỪNG CÁC EM TỚI BUỔI HỌC NÀY!
Tin học 12
KHỞI ĐỘNG
Trong lí thuyết đồ thị, chu trình được định nghĩa là một đường đi không tầm thường khép kín, tức là đường đi có số cạnh lớn hơn 1 và đỉnh xuất phát trùng với đỉnh kết thúc. Làm cách nào để kiểm tra một đồ thị cho trước có chu trình hay không?
Đồ thị có chu trình
Có thể sử dụng thuật toán DFS duyệt theo chiều sâu để kiểm tra một đồ thị cho trước có chu trình hay không:
- Bắt đầu từ một đỉnh bất kì trong đồ thị.
- Thực hiện duyệt DFS từ đỉnh này.
- Nếu đỉnh nào đã được thăm trước đó và không phải là đỉnh cha của đỉnh hiện tại (trong trường hợp của cây) → tìm thấy một chu trình.
- Nếu tất cả các đỉnh đều đã được duyệt và không tìm thấy chu trình, đồ thị không chứa chu trình.
BÀI 15: THỰC HÀNH DUYỆT ĐỒ THỊ THEO CHIỀU SÂU
Thực hành cá nhân: thực hiện Nhiệm vụ SGK tr.72.
Nếu coi tập hợp các chuyên đề học tập của trường em là một mô hình đồ thị thì:
- Mỗi chuyên đề là một đỉnh được đánh số từ 0 đến n – 1.
- Mỗi quan hệ ràng buộc kiến thức (i, j) là một cạnh có hướng từ đỉnh i đến đỉnh j.
Đồ thị là đồ thị có hướng.
Đồ thị này có chu trình tương đương với tính hợp lí của hệ thống các chuyên đề không?
Đồ thị này không có chu trình tương đương với tính hợp lí của hệ thống các chuyên đề.
Với bài toán trên chúng ta cần kiểm tra xem đồ thị các chuyên đề có chu trình hay không.
Hãy trình bày ý tưởng của việc kiểm tra.
Ý tưởng của việc kiểm tra được thực hiện bằng cách duyệt theo chiều sâu của đồ thị, bắt đầu từ một đỉnh bất kì. Để thực hiện được việc này chúng ta sẽ đưa vào mảng tổng thể các trạng thái status[] của đồ thị.
status[v] = 0 nếu đỉnh v chưa được xét (hoặc duyệt).
status[v] = 1 chỉ ra đỉnh này đang trong quá trình duyệt.
status[v] = 2 nếu đỉnh này đã được duyệt xong.
Công cụ kiểm tra chu trình được thực hiện như thế nào?
Bước 1:
Hàm DFS_acyclic(Adj,s) kiểm tra trong quá trình duyệt bắt đầu từ đỉnh s có gặp chu trình hay không.
Bước 2:
Tiến hành thực hiện kiểm tra trên toàn bộ các đỉnh của đồ thị.
Xây dựng chương trình
Hàm DFS_acyclic(Adj,s) sẽ trả lại True nếu vùng duyệt từ s không có chu trình, ngược lại nếu có chu trình sẽ trả về False.
Xây dụng chương trình
Hàm Acyclic(V,Adj) sẽ kiểm tra trên toàn bộ đồ thị và trả về True nếu đồ thị không có chu trình, ngược lại trả về False.
Phần chương trình chính:
Chương trình đầy đủ
LUYỆN TẬP
Câu 1. Hàm kiểm tra chu trình của đồ thị trên còn đúng không nếu đồ thị ban đầu là vô hướng?
Không đúng. Hàm kiểm tra trên chỉ áp dụng cho đồ thị có hướng. Với đồ thị vô hướng cần chỉnh sửa để có thể áp dụng.
Câu 2. Viết lại hàm kiểm tra chu trình DFS_acyclic(Adj,s) trong chương trình trên nhưng sử dụng phương án không đệ quy của thuật toán DFS.
Hàm DFS_acyclic(Adj,s) có thể viết lại nếu sử dụng phương án không đệ quy như sau:
- status[v] = 0 nếu s chưa được duyệt.
- status[v] = 1 nếu s đã được duyệt và vẫn đang nằm trong ngăn xếp S của lệnh duyệt theo chiều sâu.
- status[v] = 2 nếu s đã được duyệt và đã ra khỏi ngăn xếp S.
VẬN DỤNG
--------------- Còn tiếp ---------------
Tài liệu cùng môn học
- Trắc nghiệm khoa học máy tính 12 kết nối tri thức
- Giáo án word tin học khoa học máy tính 12 kết nối tri thức
- Giáo án ppt tin học khoa học máy tính 12 kết nối tri thức
- Giáo án chuyên đề tin học khoa học máy tính 12 kết nối tri thức
- Giáo án ppt chuyên đề tin học khoa học máy tính 12 kết nối tri thức
- Giải tin học khoa học máy tính 12 kết nối tri thức
- Giải chuyên đề khoa học máy tính 12 kết nối tri thức
- Lý thuyết khoa học máy tính 12 kết nối tri thức
- Bài tập củng cố Khoa học máy tính 12 kết nối tri thức
- Trắc nghiệm đúng sai khoa học máy tính 12 kết nối tri thức
- Trắc nghiệm trả lời ngắn khoa học máy tính 12 kết nối tri thức
- Đề thi tin học khoa học máy tính 12 kết nối tri thức
- Ppt trò chơi AI Tin học 12 Khoa học máy tính Kết nối tri thức
- Video AI mở đầu Tin học 12 Khoa học máy tính kết nối tri thức
Tài liệu khác
- Trắc nghiệm văn 12 kết nối tri thức
- Trắc nghiệm địa lí 12 kết nối tri thức
- Trắc nghiệm hóa học 12 kết nối tri thức
- Trắc nghiệm KTPL 12 kết nối tri thức
- Trắc nghiệm lịch sử 12 kết nối tri thức
- Trắc nghiệm sinh học 12 kết nối tri thức
- Trắc nghiệm toán 12 kết nối tri thức
- Trắc nghiệm quốc phòng 12 kết nối tri thức
- => Xem nhiều môn hơn