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

Bài giảng lý thuyết đồ thị chương 11 pgs ts hoàng chí thành

73 0 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

CHƯƠNG 11 CÂY VÀ MỘT SỐ ỨNG DỤNG NỘI DUNG Khái niệm Cây bao trùm Cây bao trùm nhỏ Cây bao trùm lớn Cây phân cấp Cây nhị phân Cây biểu thức Cây mã tối ưu 11.1 KHÁI NIỆM CÂY Khái niệm Cayley đưa vào năm 1857 Định nghĩa: Giả sử T = (V, E) đồ thị vô hướng T thỏa mãn hai tính chất sau: - liên thơng, - khơng có chu trình VÍ DỤ 11.1 Đồ thị b a c e d f g Hình 11.1 Cây đỉnh 11.1 KHÁI NIỆM CÂY (tiếp) Định lý 11.1: Cho T đồ thị vơ hướng có số đỉnh khơng Khi khẳng định sau tương đương: T T khơng có chu trình có n - cạnh T liên thơng có n - cạnh T khơng có chu trình thêm cạnh nối hai đỉnh không kề có chu trình T liên thơng bớt cạnh tính liên thơng Chỉ có đường nối hai đỉnh 11.1 KHÁI NIỆM CÂY (tiếp) Chứng minh: Chú ý đồ thị T chu trình chu số 0, nghĩa là: m = n - p 1)  2) : Vì p = m = n - p suy ra: m = n - 2)  3) : m = n - p, m = n - p = 3)  4) : p = 1, m = n - suy ra: m = n - p Vậy c(T) = 0, đồ thị T khơng có chu trình Thêm cạnh vào m tăng thêm cịn n, p khơng đổi Khi chu số c(T) = m - n + p = Đồ thị có chu trình 11.1 KHÁI NIỆM CÂY (tiếp) Chứng minh: 4)  5) : c(T) = nên m = n - p Phản chứng: đồ thị T khơng liên thơng, có hai đỉnh a, b không liên thông Thêm cạnh (a, b) vào đồ thị khơng có chu trình Mâu thuẫn với điều 4) Vậy đồ thị phải liên thông, nghiã p = Suy ra: m = n - Khi bớt cạnh bất kỳ, đồ thị khơng có chu trình Do m - = n - p' Suy p' = đồ thị tính liên thơng 11.1 KHÁI NIỆM CÂY (tiếp) Chứng minh: 5)  6) : Đồ thị T liên thông nên có đường đơn nối cặp đỉnh Giả sử cặp đỉnh a, b nối hai đường đơn khác Khi có cạnh e thuộc đường không thuộc đường Ta bỏ cạnh e đi, đồ thị liên thông Trái với điều 5) 11.1 KHÁI NIỆM CÂY (tiếp) Chứng minh: 6)  1) : Suy đồ thị T liên thơng Phản chứng: T có chu trình Vậy hai đỉnh chu trình nối hai đường đơn khác Mâu thuẫn với điều 6) 11.2 CÂY BAO TRÙM Định nghĩa 11.2 Giả sử G đồ thị vô hướng Cây T gọi bao trùm đồ thị G T đồ thị riêng G 10 VÍ DỤ CÂY BIỂU THỨC Xét biểu thức sau: E = (a + b) * (c - d) Cây biểu thức tương ứng là: 17 11.12 CÂY BIỂU THỨC (tiếp) Duyệt biểu thức theo thứ tự giữa, ta danh sách: a b + c d - * Đây dạng Ba lan ngược biểu thức E, giúp máy tính tính giá trị biểu thức cách nhanh chóng nhờ stack lưu giữ đại lượng 18 STACK TÍNH GIÁ TRỊ BIỂU THỨC d b c c c-d a a a+b a+b a+b a+b E a b + c d - * 19 11.13 CÂY MÃ TIỀN TỐ Bài toán Cho tập ký hiệu Hãy mã hóa ký hiệu dãy chữ số 0, thoả mãn tính chất tiền tố, nghĩa khơng có mã ký hiệu lại tiền tố mã ký hiệu khác 20 11.13 CÂY MÃ TIỀN TỐ (tiếp) Cách thực Xây dựng nhị phân cho: - Mỗi ký hiệu tương ứng với lá, - Cạnh xuống trái đỉnh gán nhãn - Cạnh xuống phải gán nhãn Khi đó, dãy nhãn đường từ gốc đến cho mã tiền tố ký hiệu tương ứng Cây nhị phân xây dựng gọi mã tiền tố 21 VÍ DỤ 11.10 Các mã tiền tố: 0 1 0 d c a b c 0 d e a e b Các mã tiền tố nhận là: Ký hiệu Bộ mã Bộ mã a 000 000 b 001 11 c 010 01 d 011 001 e 100 10 22 11.14 CÂY MÃ HUFFMAN Bộ mã Huffman Bài tốn: Có tin dãy ký hiệu lấy tập hữu hạn A Mỗi ký hiệu xuất tin theo tần suất biết Hãy xây dựng mã tiền tố cho tập A cho độ dài chuỗi mã tin ngắn  Bộ mã tìm mang tính tối ưu gọi mã Huffman 23 11.14 CÂY MÃ HUFFMAN (tiếp) Gọi d số ký hiệu tin, (x) tần suất xuất ký hiệu x tin Mỗi nhị phân T với nhãn 0,1 cạnh có số số ký hiệu tập A cho ta mã tiền tố cho tập ký hiệu A Mức (x) x chiều dài mã ký hiệu x Khi đó, độ dài chuỗi mã tồn tin là: M = d. (x)(x) Cây mã tiền tố T tối ưu độ dài M mã tin đạt giá trị nhỏ 24 VÍ DỤ 11.11 Xét tin gồm 1000 ký hiệu tập ký hiệu A = {a, b, c, d, e} với tần suất xuất ký hiệu tin sau: Ký hiệu a b c d e Tần suất% 23 44 17 12 25 VÍ DỤ 11.11 (tiếp) Bộ mã tối ưu: 56 44 a 33 b 16 23 c 17 d 12 e Cây mã tiền tố hình vẽ xây dựng dựa nguyên lý: đỉnh có tần suất lớn đường từ gốc tới đỉnh ngắn 26 VÍ DỤ 11.11 (tiếp) Chọn mã ví dụ mã tiền tố mã (tối ưu) đây, ta có: Ký hiệu a b c d e Độ dài mã tin Bộ mã 000 001 010 011 100 3000 Bộ mã 000 11 01 001 10 2270 Bộ mã 10 110 1110 1111 2050 27 11.15 THUẬT TOÁN HUFFMAN Xây dựng rừng T có l cây, gồm đỉnh tương ứng với ký hiệu x A gán nhãn (x) Chọn hai T có gốc với nhãn nhỏ Thêm đỉnh với nhãn tổng nhãn hai gốc vừa chọn Nối đỉnh với hai gốc hai cạnh có nhãn 0, để tạo thành nhị phân Nếu T chưa phải lặp lại bước 2), ngược lại dừng 28 11.15 THUẬT TOÁN HUFFMAN (tiếp) Định lý 11.8: Khi thuật tốn Huffman dừng mã tiền tố nhận tối ưu Chứng minh: Quy nạp theo số ký hiệu l tập A • l = : Hiển nhiên • (l)  (l+1) : Giả sử tập A = {x1, x2, …, xl-2, xl-1, xl, xl+1} Khơng tính tổng qt, giả thiết xl, xl+1 có tần suất xuất nhỏ 29 11.15 THUẬT TOÁN HUFFMAN (tiếp) Chứng minh: Ký hiệu H mã tiền tố cho tập A theo thuật tốn Huffman Vì xl, xl+1 có tần suất nhỏ nên chọn bước 2) thêm đỉnh y có tần xuất (xl) + (xl+1) Hiển nhiên, theo cách xây dựng thuật tốn nhị phân H’ = H \ {xl, xl+1} mã tiền tố tập A’ = {x1, x2, …, xl-2, xl-1, y} có l ký hiệu 30 11.15 THUẬT TOÁN HUFFMAN (tiếp) Chứng minh: Theo giả thiết quy nạp, H’ mã tối ưu cho A’ Độ dài mã tin theo H là: M = d.(xi)(xi) =l-1d[ (xi)(xi) + (y)(y)] + d.((xl) + (xl+1)) đạt giá trị bé Cây mã tiền tố H tối ưu Cây mã tiền tố tối ưu thuật toán Huffman ứng dụng rộng rãi lý thuyết mật mã 31

Ngày đăng: 21/07/2023, 16:51

Xem thêm: