1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Tai lieu giao khoa chuyen tin quyen 1 bq phan 2 6007

94 1 0

Đ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

Chun đề CÁC THUẬT TỐN TRÊN ðỒ THỊ Trên thực tế có nhiều tốn liên quan tới tập ñối tượng mối liên hệ chúng, địi hỏi tốn học phải đặt mơ hình biểu diễn cách chặt chẽ tổng quát ngơn ngữ kí hiệu, đồ thị: mơ hình tốn học gồm đỉnh biểu diễn ñối tượng cạnh biểu diễn mối quan hệ ñối tượng Leonhard Euler Những ý tưởng ñồ thị ñược ñưa từ kỉ 1707-1783 thứ XVIII nhà toán học Thuỵ Sĩ Leonhard Euler, năm 1736, ơng dùng mơ hình đồ thị để giải tốn bảy cầu Kưnigsberg (Seven Bridges of Kưnigsberg) Bài tốn với tốn mã ñi tuần (Knight Tour) ñược coi tốn lí thuyết đồ thị Rất nhiều tốn lí thuyết đồ thị trở thành tiếng thu hút ñược quan tâm lớn cộng đồng nghiên cứu Ví dụ tốn bốn màu, tốn đẳng cấu đồ thị, tốn người du lịch, tốn người đưa thư Trung Hoa, tốn đường ngắn nhất, luồng cực đại mạng v.v… Trong phạm vi chun đề, khơng thể trình bày tất phát triển suốt gần 300 năm, xem xét lí thuyết đồ thị góc độ người lập trình, tức khảo sát thuật tốn dễ dàng cài đặt máy tính số ứng dụng Cơng việc người lập trình ñọc hiểu ñược ý tưởng thuật toán cài đặt chương trình tốn tổng quát trường hợp cụ thể 126 Các khái niệm 1.1 ðồ thị ðồ thị mơ hình biểu diễn tập đối tượng mối quan hệ hai ngơi đối tượng:         ,  Có thể định nghĩa đồ thị G cặp , :   ,  Trong  tập ñỉnh (vertices) biểu diễn ñối tượng  gọi tập cạnh (edges) biểu diễn mối quan hệ ñối tượng Chúng ta quan tâm tới mối quan hệ hai (pairwise relations) đối tượng nên coi  tập cặp ,  với   hai ñỉnh  biểu diễn hai ñối tượng có quan hệ với Một số hình ảnh đồ thị: Có thể phân loại đồ thị   ,  theo đặc tính số lượng tập cạnh : Hình 5-1 Ví dụ mơ hình đồ thị • • • •  ñược gọi ñơn ñồ thị (hay gọi tắt ñồ thị) hai ñỉnh ,    có nhiều cạnh  nối từ  tới   ñược gọi ña ñồ thị (multigraph) hai ñỉnh ,    có nhiều cạnh  nối   (Hiển nhiên ñơn ñồ thị ña ñồ thị) Nếu có nhiều cạnh nối hai đỉnh ,    cạnh gọi cạnh song song (parallel edges)  gọi đồ thị vơ hướng (undirected graph) cạnh  khơng định hướng, tức cạnh nối hai ñỉnh ,    cạnh nối hai đỉnh ,  Hay nói cách khác, tập  gồm cặp ,  khơng tính thứ tự: ,   ,   gọi đồ thị có hướng (directed graph) cạnh  có định hướng, tức có cạnh nối từ đỉnh  tới ñỉnh  chưa ñã có cạnh nối từ ñỉnh  tới ñỉnh  Hay nói cách khác, tập  gồm cặp ,  127 có tính thứ tự: ,   ,  Trong đồ thị có hướng, cạnh cịn gọi cung (arcs) ðồ thị vơ hướng coi đồ thị có hướng ta coi cạnh nối hai ñỉnh ,  tương ñương với hai cung ,  ,  Hình 5-2 ví dụ đơn đồ thị/đa đồ thị có hướng/vơ hướng Có hướng Vơ hướng Có hướng Vơ hướng ða đồ thị ðơn đồ thị Hình 5-2 Phân loại đồ thị Như ñịnh nghĩa ñồ thị   ,  cấu trúc rời rạc, tức tập   tập khơng q đếm được, ta đánh số thứ tự 1, 2, 3… cho phần tử tập V  ñồng phần tử tập   với số thứ tự chúng Hơn nữa, ñứng phương diện người lập trình cho máy tính ta quan tâm ñến ñồ thị hữu hạn (  tập hữu hạn) mà thơi, từ sau, khơng thích thêm nói tới đồ thị, ta hiểu ñó ñồ thị hữu hạn 1.2 Các khái niệm a) Cạnh liên thuộc, ñỉnh kề, bậc ðối với ñồ thị vô hướng   ,  Xét cạnh  ,  ,  ta nói hai ñỉnh   kề (adjacent) cạnh liên thuộc (incident) với ñỉnh  ñỉnh  Với đỉnh  đồ thị vơ hướng, ta ñịnh nghĩa bậc (degree) , kí hiệu deg số cạnh liên thuộc với  Trên ñơn ñồ thị số cạnh liên thuộc với  số ñỉnh kề với  128 Giả sử   ,  đồ thị vơ hướng, tổng tất bậc ñỉnh  hai lần số cạnh: ðịnh lí 5-1 ! deg  2|| "# (1) Khi lấy tổng tất bậc ñỉnh tức cạnh  ,  tính lần deg lần deg Từ suy kết Chứng minh Hệ Trong ñồ thị vơ hướng, số đỉnh bậc lẻ số chẵn ðối với đồ thị có hướng   ,  Xét cung  ,  ,  ta nói  nối tới   nối từ , cung ñi khỏi ñỉnh  ñi vào đỉnh  ðỉnh  gọi ñỉnh ñầu, ñỉnh  ñược gọi ñỉnh cuối cung Với đỉnh  đồ thị có hướng, ta ñịnh nghĩa: Bán bậc (out-degree)  kí hiệu deg &  số cung khỏi nó; bán bậc vào (in-degree) kí hiệu deg '  số cung vào đỉnh Giả sử   ,  đồ thị có hướng, ñó tổng tất bán bậc ñỉnh tổng tất bán bậc vào số cung đồ thị ðịnh lí 5-2 ! deg &   ! deg '   || "# "# (2) Khi lấy tổng tất bán bậc hay bán bậc vào, cung ,  tính lần deg &  tính lần deg '  Từ suy kết Chứng minh b) ðường chu trình Một dãy đỉnh: (  )* , + , … , - cho /'+ , /   , 0:  ñược gọi ñường ñi (path), ñường ñi gồm  ñỉnh * , + , … , - cạnh * , + , + , 5 , … , -'+ , -  Nếu có đường ta nói - đến (reachable) từ * hay * ñến ñược - , kí hiệu * - ðỉnh * ñược gọi ñỉnh ñầu ñỉnh - gọi ñỉnh cuối ñường ñi ( Các ñỉnh + , 5 , … , -'+ ñược gọi ñỉnh ñường ñi ( 129 Một ñường ñi gọi ñơn giản (simple) hay ñường ñi ñơn tất đỉnh đường hồn tồn phân biệt (dĩ nhiên cạnh đường ñi hoàn toàn phân biệt) ðường ñi (  )* , + , … , - trở thành chu trình (circuit) *  - Trên đồ thị có hướng, chu trình ( gọi chu trình đơn có cung đỉnh + , 5 , … , - hồn tồn phân biệt Trên đồ thị vơ hướng, chu trình ( gọi chu trình đơn ñỉnh + , 5 , … , hoàn toàn phân biệt c) Một số khái niệm khác ðẳng cấu Hai ñồ thị   ,     ,   ñược gọi ñẳng cấu (isomorphic) tồn song ánh ::  ; < cho số cung nối  với   số cung nối : với :  ðồ thị    ,   ñồ thị (subgraph) ñồ thị   ,  < =  < =  ðồ thị ðồ thị >  ?, >  ñược gọi ñồ thị cảm ứng (induced graph) từ ñồ thị  tập ? =  >  @,   : ,   ?A trường hợp cịn nói > đồ thị  hạn chế ? Với đồ thị vơ hướng   , , ta gọi phiên có hướng (directed version)  đồ thị có hướng   , 

Ngày đăng: 28/06/2023, 21:55

Xem thêm: