1. Trang chủ
  2. » Khoa Học Tự Nhiên

CHƯƠNG 5: ĐỒ THỊ potx

41 265 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Chương 5: Đồ Thị
Tác giả Nguyễn Văn Linh
Trường học Đại học Cần Thơ
Chuyên ngành Khoa học máy tính
Thể loại Báo cáo môn học
Năm xuất bản 2023
Thành phố Cần Thơ
Định dạng
Số trang 41
Dung lượng 276,09 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Trang 1

CH ƯƠ NG 5: Đ TH Ồ Ị

Nguy n Văn LinhễKhoa CNTT-TT

Đ i h c C n Thạ ọ ầ ơnvlinh@cit.ctu.edu.vn

Trang 3

CÁC KHÁI NI M (1) Ệ

• M t đ th G bao g m m t t p h p V các đ nh và m t t p ộ ồ ị ồ ộ ậ ợ ỉ ộ ậ

h p E các c nh, ký hi u G=(V,E) ợ ạ ệ

• Các đ nh còn đ ỉ ượ c g i là nút (node) hay đi m (point) Các ọ ể

c nh n i gi a hai đ nh, hai đ nh này có th trùng nhau ạ ố ữ ỉ ỉ ể

• Hai đ nh có c nh n i nhau g i là hai đ nh k (adjacency) ỉ ạ ố ọ ỉ ề

M t c nh n i gi a hai đ nh v, w có th coi nh là m t c p ộ ạ ố ữ ỉ ể ư ộ ặ

đi m (v,w) ể

• N u c p này có th t thì ta có c nh có th t , ng ế ặ ứ ự ạ ứ ự ượ ạ c l i thì c nh không có th t ạ ứ ự

Trang 4

• Đ nh v1 còn g i là đ nh đ u, vn g i là đ nh cu i ỉ ọ ỉ ầ ọ ỉ ố

Đ dài c a độ ủ ường đi này b ng s đ nh tr 1 ằ ố ỉ ừ

• Trường h p đ c bi t dãy ch có m t đ nh v thì ta ợ ặ ệ ỉ ộ ỉcoi đó là đường đi t v đ n chính nó có đ dài ừ ế ộ

b ng không.ằ

Trang 5

CÁC KHÁI NI M (3) Ệ

Trang 6

BI U DI N Đ TH Ể Ễ Ồ Ị

• Bi u di n đ th b ng ma tr n k ể ễ ồ ị ằ ậ ề

k ề

Trang 8

BI U DI N B NG MA TR N K (2) Ể Ễ Ằ Ậ Ề

0

3 2

Trang 10

MA TR N TR NG S (1) Ậ Ọ Ố

0

3 2

10

30

50

10 100

Trang 11

30

50

10 100

Trang 14

CÁC PHÉP DUY T TRÊN Đ TH Ệ Ồ Ị

Trang 15

Nguy n Văn Linh ễ

DUY T THEO CHI U SÂU (1) Ệ Ề

Trang 16

DUY T THEO CHI U SÂU (2) Ệ Ề

}

Trang 17

DUY T THEO CHI U SÂU (3) Ệ Ề

• Kh i đ u t i A, đánh d u A, duy t ở ầ ạ ấ ệG,

Trang 18

DUY T THEO CHI U R NG (1) Ệ Ề Ộ

• Gi s ta có đ th G v i các đ nh ban đ u đả ử ồ ị ớ ỉ ầ ược đánh d u là ch a duy t (unvisited) ấ ư ệ

• T m t đ nh v nào đó ta b t đ u duy t nh sau: ừ ộ ỉ ắ ầ ệ ư

đánh d u v đã đấ ược duy t, k đ n là duy t t t c ệ ế ế ệ ấ ảcác đ nh k v i v ỉ ề ớ

Trang 19

DUY T THEO CHI U R NG (2) Ệ Ề Ộ

Trang 20

DUY T THEO CHI U R NG (3) Ệ Ề Ộ

} }

}

Trang 21

DUY T THEO CHI U R NG (4) Ệ Ề Ộ

• Kh i đ u t A, đánh d u A, đ a A vào ở ầ ừ ấ ư hàng.

Trang 22

CÁC BÀI TOÁN TRÊN Đ TH Ồ Ị

• Tìm đu ng đi ng n nh t t m t đ nh c a đ ờ ắ ấ ừ ộ ỉ ủ ồ

Trang 24

TÌM Đ ƯỜ NG ĐI NG N NH T T Ắ Ấ Ừ

• Xác đ nh m t t p h p S ch a các đ nh mà kho ng ị ộ ậ ợ ứ ỉ ảcách ng n nh t t nó đ n đ nh ngu n v đã bi t ắ ấ ừ ế ỉ ồ ế

• Kh i đ u S={v}, sau đó t i m i bở ầ ạ ỗ ước ta s thêm ẽvào S các đ nh mà kho ng cách t nó đ n v là ỉ ả ừ ế

ng n nh t ắ ấ

• V i gi thi t m i c nh có m t kho ng cách không ớ ả ế ỗ ạ ộ ả

âm thì ta luôn luôn tìm được m t độ ường đi ng n ắ

nh t nh v y mà ch đi qua các đ nh đã t n t i ấ ư ậ ỉ ỉ ồ ạ

trong S

Trang 25

30

50

10 100

Trang 26

• T i m i b ạ ỗ ướ ủ c c a gi i thu t thì D[i] s đ ả ậ ẽ ượ ậ c c p nh t l i ậ ạ

đ l u đ dài đ ể ư ộ ườ ng đi ng n nh t t đ nh v t i đ nh i, ắ ấ ừ ỉ ớ ỉ

đ ườ ng đi này ch đi qua các đ nh đã có trong S ỉ ỉ

• Đ cài đ t gi i thu t d dàng, ta gi s các đ nh c a đ th ể ặ ả ậ ễ ả ử ỉ ủ ồ ị

đ ượ c đánh s t 1 đ n n, t c là V={1, ,n} và đ nh ngu n ố ừ ế ứ ỉ ồ

Trang 27

TÌM Đ ƯỜ NG ĐI NG N NH T T Ắ Ấ Ừ

void Dijkstra () {

S=[0]; //S ch ch a m t đ nh ngu n ỉ ứ ộ ỉ ồ

for (i=1; i<n; i++)

D[i]:=C[0,i]; //kh i đ u các giá tr cho D ở ầ ị for (i=1; i<n; i++) {

L y đ nh w trong V-S sao cho D[w] nh nh t; ấ ỉ ỏ ấ Thêm w vào S;

for (m i đ nh u thu c V-S) do ỗ ỉ ộ

D[u] := min(D[u], D[w] + C[w,u]);

}

}

Trang 29

TÌM Đ ƯỜ NG ĐI NG N NH T T Ắ Ấ Ừ

void Dijkstra () {

S=[0]; //S ch ch a m t đ nh ngu n ỉ ứ ộ ỉ ồ

for (i=1; i<n; i++) {

D[i]=C[0,i]; //kh i đ u các giá tr cho D ở ầ ị P[i] = 0; }

for (i=1; i<n; i++) {

L y đ nh w trong V-S sao cho D[w] nh nh t; ấ ỉ ỏ ấ Thêm w vào S;

}

Trang 30

i=3 0 3 0 2

i=4 0 3 0 2

for (i=1; i<n; i++) {

L y đ nh w trong V-S sao cho D[w] nh nh t, Thêm w vào S; ấ ỉ ỏ ấ for (m i đ nh u thu c V-S) do ỗ ỉ ộ

if (D[w] + C[w,u] < D[u]) {

D[u]=D[w] + C[w,u];

P[u]=w; } }

T m ng P, suy ng ừ ả ượ ạ c l i ta s có đ ẽ ườ ng đi ng n nh t Ví d tr ắ ấ ụ ướ c 4 là 2, tr ướ c

2 là 3 và tr ướ c 3 là 0 V y đ ậ ườ ng đi ng n nh t t 0 đ n 4 là 0,3,2,4 v i đ dài ắ ấ ừ ế ớ ộ

Trang 31

TÌM CÂY BAO TRÙM T I THI U (1) Ố Ể

• Gi s ta có m t đ th vô hả ử ộ ồ ị ướng G=(V,E)

• Đ th G g i là liên thông n u t n t i đồ ị ọ ế ồ ạ ường đi

gi a các thành ph ữ ố

Trang 32

TÌM CÂY BAO TRÙM T I THI U (2) Ố Ể

• Gi s G có n đ nh đả ử ỉ ược đánh s 1 n ố

• Gi i thu t Prim đ gi i bài toán này nh sau: ả ậ ể ả ư

• B t đ u, cho U = {1} và T=ắ ầ ∅

• Sau đó ta l p l i cho đ n khi U=V, t i m i bặ ạ ế ạ ỗ ướ ặc l p

ta ch n c nh nh nh t (u,v) sao cho u ọ ạ ỏ ấ ∈ U và v ∈

V-U N u thêm (u,v) vào T mà không t o thành chu ế ạ

trình thì thêm v vào U và (u,v) vào T

• Khi gi i thu t k t thúc thì (U,T) là m t cây ph t i ả ậ ế ộ ủ ố

ti u.ể

Trang 33

TÌM CÂY BAO TRÙM T I THI U (3) Ố Ể

• Kh i đ u cho U={1} và T= ở ầ ∅

• (1,3) nh nh t nên U={1,3} và ỏ ấ T={(1,3)}

• (3,6) nh nh t nên U={1,3,6} và ỏ ấ T={(1,3); (3,6)}

• (6,4) nh nh t nên U={1,3,4,6} và ỏ ấ T={(1,3); (3,6); (6,4)}

• (3,2) nh nh t nên U={1,2,3,4,6} và ỏ ấ T={(1,3); (3,6); (6,4), (3,2)}

• (2,5) nh nh t nên U={1,2,3,4,5,6} ỏ ấ

và T={(1,3); (3,6); (6,4); (3,2); (2,5)}

Trang 34

TÌM CÂY BAO TRÙM T I THI U (4) Ố Ể

void Prim(Graph G, Set_of_Edges &T) {

Trang 35

TÌM CÂY BAO TRÙM T I THI U (5) Ố Ể

Trang 36

TÌM CÂY BAO TRÙM T I THI U (6) Ố Ể

• K ti p c nh (2,3) đ ế ế ạ ượ c xét và đ ượ c

đ a vào T ư

• T={(1,3),(4,6),(2,5),(3,6),(2,3)}

Trang 37

• N u hai đ nh i,j không đế ỉ ược n i thì C[i,j]= ố ∞

• Gi i thu t Floyd xác đ nh đả ậ ị ường đi ng n nh t ắ ấ

Trang 39

TÌM BAO ĐÓNG CHU N TI P (1) Ể Ế

• C n xác đ nh có hay không có đ ầ ị ườ ng đi n i gi a hai đ nh i,j ố ữ ỉ

b t kỳ ấ

• Gi i thu t Floyd có th đ c bi t hoá đ gi i bài toán này ả ậ ể ặ ệ ể ả

Ma tr n k C có C[i,j]=1n u i,j đ ậ ề ế ượ c n i nhau b i m t ố ở ộ

Trang 40

}

Ngày đăng: 31/07/2014, 16:20

TỪ KHÓA LIÊN QUAN