Bài giảng Lý thuyết đồ thị - Phần 1

Chia sẻ: Hoàng Danh Long | Ngày: | Loại File: PPT | Số trang:49

0
131
lượt xem
73
download

Bài giảng Lý thuyết đồ thị - Phần 1

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Đồ thị là một cấu trúc rời rạc gồm các định và các cạnh nối các đỉnh đó

Chủ đề:
Lưu

Nội dung Text: Bài giảng Lý thuyết đồ thị - Phần 1

  1. Chương II. Lý thuyết đồ thị I. Các khái niệm cơ bản II. Biểu diễn đồ thị III. Tính liên thông IV. Chu trình Euler V. Bài toán tìm đường đi ngắn nhất VI. Đồ thị phẳng VII.Tô màu đồ thị    
  2. I. Các khái niệm cơ bản  1. ĐỊNH NGHĨA ĐỒ THỊ (GRAPH)  Là một cấu trúc rời rạc gồm các đỉnh và các cạnh nối các đỉnh  đó. Được mô tả hình thức: G = (V, E)  V gọi là tập các đỉnh (Vertices) và E gọi là tập các cạnh  (Edges). Có thể coi E là tập các cặp (u, v) với u và v là hai  đỉnh thuộc V.  Ví dụ: Đường Mạng phố máy tính    
  3. 2. Phân loại đồ thị  G được gọi là đơn đồ thị nếu giữa hai đỉnh phân biệt u, v của V có nhiều nhất là 1 cạnh trong E nối từ u tới v.  G được gọi là đa đồ thị nếu giữa hai đỉnh phân biệt u, v của V có thể có nhiều hơn 1 cạnh trong E nối từ u tới v  G được gọi là giả đồ thị nếu G là đa đồ thị và có thể có cạnh nối từ một đỉnh đến chính nó. Cạnh đó được gọi là khuyên  G được gọi là đồ thị vô hướng nếu các cạnh trong E không có sự phân biệt đỉnh nào là đỉnh đầu, đỉnh nào là đỉnh cuối.  G được gọi là đồ thị có hướng nếu các cạnh trong E có sự phân biệt đỉnh nào là đỉnh đầu, đỉnh nào là đỉnh cuối.    
  4. Ví dụ Đơn đồ Đơn đồ thị thị vô hướng có hướng Đa đồ thị Đa đồ thị vô hướng có hướng    
  5. 3. Cạnh liên thuộc, đỉnh kề, bậc  Đối với đồ thị vô hướng G = (V, E). Xét một cạnh e ∈ E, nếu e = (u, v) thì ta nói hai đỉnh u và v là kề nhau (adjacent) và cạnh e này liên thuộc (incident) với đỉnh u và đỉnh v.  Với một đỉnh v trong đồ thị, ta định nghĩa bậc (degree) của v, ký hiệu deg(v) là số cạnh liên thuộc với v.  Định lý: Giả sử G = (V, E) là đồ thị vô hướng với m cạnh, khi đó tổng tất cả các bậc đỉnh trong V sẽ bằng 2m: ∑ deg(v) = 2m v ⊂V  Chứng minh: Khi lấy tổng tất cả các bậc đỉnh tức là mỗi cạnh e = (u, v) bất kỳ sẽ được tính một lần trong deg(u) và một lần trong deg(v). Từ đó suy ra kết quả.  Hệ quả: Trong đồ thị vô hướng, số đỉnh bậc lẻ là số chẵn    
  6.  Đối với đồ thị có hướng G = (V, E). Xét một cung e ∈ E, nếu e = (u, v) thì đỉnh u khi đó được gọi là đỉnh đầu,đỉnh v được gọi là đỉnh cuối của cung e.  Với mỗi đỉnh v trong đồ thị có hướng, ta định nghĩa: bậc ra của v ký hiệu deg+(v) là số cung đi ra khỏi nó; bậc vào ký hiệu deg-(v) là số cung đi vào đỉnh đó.  Định lý: Giả sử G = (V, E) là đồ thị có hướng với m cung, khi đó tổng tất cả các bậc ra bằng tổng tất cả các bậc vào và bằng m: ∑ deg + (v) = ∑ deg − (v) = m v ⊂V v ⊂V    
  7. 4. Một số dạng đồ thị đặc biệt  a. Đồ thị đầy đủ Kn (n≥1) có n đỉnh và mỗi cặp đỉnh đều có đúng một cạnh nối. K4 K2 K3    
  8.  b. Chu trình Cn (n≥3) có n đỉnh v1,v2,..vn và các cạnh (v1,v2); (v2,v3)....(vn-1,vn) và (vn,v1) C4 C3 c5    
  9.  c. Đồ thị hình bánh xe  Khi thêm một đỉnh vào giữa chu trình Cn và nối đỉnh này với các đỉnh của đồ thị Cn ta thu được đồ thị hình bánh xe. W4 W3 W5    
  10.  d. Đồ thị hình khối Qn có 2n đỉnh, mỗi đỉnh được biểu diễn bằng xâu nhị phân độ dài n. Hai đỉnh là liền kề nếu các xâu nhị phân biểu diễn chúng khác nhau đúng một bit. 10 11 110 111 Q1 100 101 Q2 Q3 010 011 000 001 00 01    
  11.  e. Đồ thị phân đôi là đồ thị có tập các đỉnh V có thể phân làm hai tập con không rỗng, rời nhau V1 và V2 sao cho mỗi cạnh của đồ thị nối 1 đỉnh của V1 với 1 đỉnh của V2  Đồ thị phân đôi đầy đủ Km,n là đồ thị có tập các đỉnh được phân thành hai tập con tương ứng có m đỉnh và n đỉnh và có cạnh giữa hai đỉnh nếu đỉnh thứ nhất thuộc tập con này, đỉnh thứ hai thuộc tập con kia.    
  12. II. Biểu diễn đồ thị 1. Ma trận liền kề (ma trận kề)  Giả sử G = (V, E) là một đơn đồ thị có số đỉnh là n, không mất tính tổng quát có thể coi các đỉnh được đánh số 1, 2, ..., n. Khi đó ta có thể biểu diễn đồ thị bằng một ma trận vuông cấp n A = [aij]. Trong đó:  aij= 1 nếu (i, j) ∈ E  aij = 0 nếu (i, j) ∉ E  Đối với đa đồ thị thì việc biểu diễn cũng tương tự trên, chỉ có điều nếu như (i, j) là cạnh thì không phải ta ghi số 1 vào vị trí aij mà là ghi số cạnh nối giữa đỉnh i và đỉnh j    
  13. Ví dụ    
  14. Ưu điểm và nhược điểm  Ưu điểm của ma trận liền kề:  Đơn giản, trực quan, dễ cài đặt trên máy tính  Để kiểm tra xem hai đỉnh (u, v) của đồ thị có kề nhau hay không, ta chỉ việc kiểm tra bằng một phép so sánh: auv≠ 0.  Nhược điểm của ma trận liền kề:  Tiêu tốn bộ nhớ: bất kể số cạnh của đồ thị là nhiều hay ít, ma trận liền kề luôn luôn đòi hỏi n2 ô nhớ để lưu các phần tử ma trận.  Khó làm việc với đồ thị có số lượng đỉnh lớn.    
  15. 2. Danh sách cạnh  Trong trường hợp đồ thị có n đỉnh, m cạnh, ta có thể biểu diễn đồ thị dưới dạng danh sách cạnh, trong cách biểu diễn này, người ta liệt kê tất cả các cạnh của đồ thị trong một danh sách, mỗi phần tử của danh sách là một cặp (u, v) tương ứng với một cạnh của đồ thị.  Danh sách được lưu trong bộ nhớ dưới dạng mảng hoặc danh sách móc nối. Ví dụ với đồ thị dưới đây:    
  16.  Ưu điểm của danh sách cạnh:  Trong trường hợp đồ thị có số cạnh tương đối nhỏ: chẳng hạn m < 6n cách biểu diễn bằng danh sách cạnh sẽ tiết kiệm được không gian lưu trữ, bởi nó chỉ cần 2m ô nhớ để lưu danh sách cạnh.  Dể dàng duyệt tất cả các cạnh của đồ thị. Nhược điểm của danh sách cạnh:  Nhược điểm cơ bản của danh sách cạnh là khi ta cần duyệt tất cả các đỉnh kề với đỉnh v nào đó của đồ thị, thì chẳng có cách nào khác là phải duyệt tất cả các cạnh, lọc ra những cạnh có chứa đỉnh v và xét đỉnh còn lại.    
  17. 3. Danh sách kề  Trong cách biểu diễn này, với mỗi đỉnh v của đồ thị, ta cho tương ứng với nó một danh sách các đỉnh kề với v. Đỉnh Đỉnh kề 1 2,3,5 2 1,3 3 1,2,4 Ưu điểm Dễ 4 3,5 dàng duyệt tất cả các đỉnh kề với một đỉnh v cho trước 5 1,4 Dễ dàng duyệt tất cả các cạnh Nhược điểm: Cài đặt danh sách kề có phần dài dòng hơn.    
  18. III. Tính liên thông  Đường đi độ dài n từ đỉnh u đến đỉnh v trong đồ thị là một dãy các cạnh e1, e2, ..en với (u,x1) = e1; (x1,x2) = e2; .. (xn-1,v) = en  Độ dài đường đi bằng với số cạnh mà nó đi qua  Chu trình là đường đi mà nó bắt đầu và kết thúc tại cùng một đỉnh  Chu trình (đường đi) gọi là đơn khi nó không đi qua cùng 1 cạnh quá một lần  Một đồ thị được gọi là liên thông nếu có đường đi giữa mọi cặp đỉnh phân biệt của đồ thị  Định lý: Giữa mọi cặp đỉnh của một đồ thị vô hướng liên thông luôn có đường đi đơn    
  19.  Một đồ thị không liên thông là hợp của 1 hay nhiều đồ thị con liên thông. Các đồ thị này được gọi là các thành phần liên thông  Đồ thị có hướng gọi là liên thông mạnh nếu có đường đi từ a tới b và từ b tới a với a, b là hai đỉnh bất kỳ của đồ thị.    
  20. IV. Chu trình và đường đi Euler  Bài toán bảy cây cầu Euler, còn gọi là Bảy cầu ở Königsberg nảy sinh từ vấn đề cụ thể. Thành phố Königsberg, Đức (nay là Kaliningrad, Nga) nằm trên sông Pregel, bao gồm hai hòn đảo lớn nối với nhau và với đất liền bởi bảy cây cầu. Câu hỏi đặt ra là có thể đi theo một tuyến đường mà đi qua mỗi cây cầu đúng một lần rồi quay lại điểm xuất phát hay không. Năm 1736, Leonhard Euler đã chứng minh rằng điều đó là không thể được. Trong lịch sử toán học, lời giải của Euler cho bài toán bảy cây cầu ở Königsberg được coi là định lý đầu tiên của lý thuyết đồ thị.    

CÓ THỂ BẠN MUỐN DOWNLOAD

Đồng bộ tài khoản