Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 69 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
69
Dung lượng
1,23 MB
Nội dung
Bài giảng LÝ THUYẾT ĐỒ THỊ (GRAPH THEORY) Chương 1: Giới thiệu tổng quan Khái niệm đồ thị, số lĩnh vực ứng dụng đồ thị Định nghĩa Một số đồ thị đặc biệt Biểu diễn đồ thị Đường chu trình Liên thơng thành phần liên thơng Một số vấn đề liên quan đến cài đặt đồ thị Khái niệm Một đồ thị hiểu đơn giản cấu trúc rời rạc gồm tập đỉnh, tập cạnh nối đỉnh Ví dụ: Đỉnh a d e b Đồ thị vô hướng cạnh c Đồ thị có hướng Một số lĩnh vực ứng dụng Trong thực tế, nhiều toán thuộc lĩnh vực khác giải đồ thị: Lĩnh vực mạng máy tính: Biểu diễn mạng máy tính Xác định máy liên lạc vơi mạng,… Một số lĩnh vực ứng dụng Lĩnh vực giao thơng: Tìm đường đi, đường ngắn hai thành phố mạng giao thông,… e2 Tỉnh C e1 e7 e9 e3 Tỉnh F Tỉnh D 12 Tỉnh A e8 Tỉnh E e6 e4 20 e5 Mỗi đỉnh: tỉnh Mỗi cạnh nối đỉnh u,v: Có đường trực tiếp tỉnh u,v Con số cạnh: Độ dài đường trực tiếp tỉnh Yêu cầu: Tìm đường ngắn từ tỉnh đến tỉnh khác (chẳng hạn từ A đến F)? Một số lĩnh vực ứng dụng Giải toán lập lịch, thời khóa biểu, phân bố tần số cho trạm phát truyền hình … Ví dụ: Bài tốn cầu Konigsberg: Tìm cách qua bảy cầu, sau điểm xuất phát, cầu qua lần ? Giải đồ thị Một số định nghĩa Đồ thị vô hướng (undirected graph ): Đồ thị vô hướng G=(V,E) với: V tập đỉnh E: Là đa tập hợp với phần tử có dạng (u,v) với u,vV khơng có thứ tự, gọi cạnh đồ thị Biểu diễn biểu đồ: Mỗi đỉnh điểm Mỗi cạnh (u,v) cạnh vô hướng nối u v Ví dụ: Cho đồ thị G với Tập đỉnh V ={1,2,3,4} tập cạnh E ={(1,2), (2,3), (3,4), (2,4)} Kí hiệu: G = (V,E) Một số định nghĩa Cho đồ thị vô hướng G=(V,E) Với cạnh e=(u,v)E, u,v gọi đỉnh kề nhau, e gọi cạnh liên thuộc với đỉnh u,v Hai cạnh e1, e2 liên kết cặp đỉnh khác gọi cạnh song song (paralell edges) Một cạnh đỉnh gọi khuyên (loop) Đỉnh kề với đỉnh Ví dụ: e e1 Đỉnh kề với đỉnh e3 Đỉnh kề với đỉnh Đỉnh không kề với đỉnh e4 … e6 e5 e7 e3, e4: Các cạnh song song e8: Khuyên e9 e8 Một số định nghĩa Cho đồ thị vô hướng G=(V,E): G đồ thị đơn (Simple graph) G khơng có khun khơng có cạnh song song G gọi đa đồ thị (multigraphs)nếu G khơng có khun có cạnh song song G gọi giả đồ thị (pseudographs) G có khuyên cạnh song song Đơn đồ thị Giả đồ thị Đa đồ thị 10 Duyệt đồ thị theo chiều sâu (DFS: Depth First Search) 2 6 55 Duyệt đồ thị theo chiều sâu (DFS: Depth First Search) 56 Thuật toán duyệt đồ thị theo chiều Procedure visited(u) Begin visited[u]:=True; for each vertex v adjacent to u if not vistited[v] then DFS(v); End Procedure DFS begin for each vertex u in V visited[u]=false; for each vertex u in V If not visited[u] then DFS(u); End 57 Duyệt đồ thị theo chiều rộng (BFS: Breadth First Search) Duyệt theo chiều rộng 2 3 7 58 Duyệt đồ thị theo chiều rộng (BFS: Breadth First Search) Duyệt theo chiều sâu 59 Thuật toán duyệt đồ thị theo chiều rộng Procedure visit(u) Begin Queue:=; Queue.push(u); visited[u]:=True; While Queue Begin v=Queue.pop(); visit(v); for each vertex w adjacent to v If not visited[w] then Begin Queue.push(w); visited[w]=true; End; End; End; 60 Procedure BFS Begin for each vertex u in V visited[u]=false; for each vertex u in V If not visited[u] then BFS(u); End 61 Bài tập chương 01 1) Viết ma trận kề mà trận liên thuộc đồ thị sau: H1 H2 H3 H4 62 Bài tập chương 01 2) Tìm số đỉnh đồ thị vơ hướng G Biết: a) G có 12 cạnh đỉnh có bậc b) G có 15 cạnh, đỉnh bậc đỉnh lại bậc c) G có cạnh đỉnh có bậc 3) Một đồ thị vơ hướng G có 19 cạnh đỉnh có bậc >=3 G có tối đa đỉnh? 4) Biết đỉnh đồ thị vô hướng G có bậc số lẻ p Cmr, số cạnh G bội số p 63 Bài tập chương 01 Với đồ thị vô hướng sau đây, tính bậc đỉnh, đỉnh treo, đỉnh lập, sau tính tổng bậc tất đỉnh, áp dụng định lý bắt tay tính số cạnh đồ thị: 64 Bài tập chương 01 Với đồ thị có hướng sau đây, tính bậc trong, bậc ngồi đỉnh, tính số cung đồ thị: 65 Bài tập chương 01 Với đồ thị có hướng sau đây, tính bậc trong, bậc ngồi đỉnh, tính số cung đồ thị: 66 Bài tập chương 01 Các đồ thi sau đây, đồ thị lưỡng phân 67 Bài tập chương 01 5) Cho G={V,E} đơn với V={v1,v2,…,vn} (n≥2) Và E = {(i,j), 1≤i,j≤n, i≠j, i+j chẵn} CMR: G không liên thông? xác định số thành phần liên thông 6) Có thể có nhóm người người quen biết người khác nhom hay không 7) CMR, đồ thị liên thông có n đỉnh có n-1 cạnh 8) CMR, đồ thị đơn tồn đường từ đỉnh bậc lẻ tới đỉnh bậc lẻ khác 68 Thực hành chương Cài đặt đồ thị (vơ hướng/ có hướng): Sử dụng ma trận kề, ma trận liện thuộc để biểu diễn đồ thị Các phương thức: Thêm đỉnh Thêm cạnh In ma trận kề/ma trận liện thuộc Duyệt đồ thị (theo DFS BFS) Tính bậc đỉnh Tìm đường từ đỉnh x đến đỉnh y Kiểm tra tính liên thơng đồ thị Tìm thành phần liên thơng Kiểm tra đồ thị có phải đồ thị đồ thị khác 69 ... subgraph): Cho đồ thị G=(V,E) H=(X,U), HG Nếu X=V H gọi đồ thị khung G Ví dụ: b b d a e c G d a c e H H đồ thị khung G 17 Một số đồ thị đặc biệt Đồ thị đủ (Complete Graph): Một đơn đồ thị vô hướng... thiệu tổng quan Khái niệm đồ thị, số lĩnh vực ứng dụng đồ thị Định nghĩa Một số đồ thị đặc biệt Biểu diễn đồ thị Đường chu trình Liên thơng thành phần liên thơng Một số vấn đề liên quan. .. nghĩa Đồ thị (subgraph ): Cho đồ thị (cùng có hướng vô hướng) G=(V,E) H=(X,U) H gọi đồ thị G XV U E Kí hiệu HG Ví dụ: b b d a e c G a d c H H đồ thị G 16 Một số định nghĩa Đồ thị khung