Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 65 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
65
Dung lượng
1,05 MB
Nội dung
TRƢỜNG ĐẠI HỌC SƢ PHẠM HÀ NỘI KHOA TOÁN ************* DƢƠNG PHUONG HOA ĐỒ THỊ CÂY VÀ ỨNG DỤNG KHĨA LUẬN TỐT NGHIỆP ĐẠI HỌC Chun ngành Tốn Ứng dụng HÀ NỘI – 2014 TRƢỜNG ĐẠI HỌC SƢ PHẠM HÀ NỘI KHOA TOÁN ************* DƢƠNG PHƢƠNG HOA ĐỒ THỊ CÂY VÀ ỨNG DỤNG KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC Chuyên ngành Toán ứng dụng Ngƣời hƣớng dẫn khoa học T.S TRẦN MINH TƢỚC HÀ NỘI – 2014 LỜI CẢM ƠN Trong q trình thực khố luận em nhận nhiều giúp đỡ quý báu bổ ích từ thầy bạn bè Em xin chân thành cảm ơn thầy cô khoa Toán trường Đại học sư phạm Hà Nội tận tâm giảng dạy, truyền thụ kiến thức kinh nghiệm q báu để em hồn thành tốt khố học Đặc biệt, em xin bày tỏ lòng cảm ơn sâu sắc tới thầy Trần Minh Tƣớc, thầy trực tiếp hướng dẫn, nhiệt tình giúp đỡ bảo em suốt q trình thực khố luận Em xin chân thành cảm ơn thầy cô tổ Toán Ứng dụng - khoa Toán, thư viện nhà trường, gia đình bạn bè tạo điều kiện, động viên, giúp đỡ để em hồn thành khố luận Xuân Hòa, ngày 06 tháng năm 2014 Sinh viên Dương Phương Hoa LỜI CAM ĐOAN Tôi cam đoan khoá luận “Những vấn đề số thuật toán đồ thị” kết nghiên cứu hướng dẫn TS.Trần Minh Tƣớc Tôi xin khẳng định kết nghiên cứu khố luận khơng chép kết tác giả khác Nếu sai sót tơi xin chịu hồn tồn trách nhiệm Xn Hòa, ngày 06 tháng năm 2014 Sinh viên Dương Phương Hoa MỤC LỤC MỞ ĐẦU Chương NHỮNG KIẾN THỨC CƠ BẢN VỀ ĐỒ THỊ 1.1 Khái niệm đồ thị 1.2 Các thuật ngữ đồ thị 1.2.1 Những thuật ngữ sở 1.2.2 Xây dựng đồ thị từ đồ thị cũ 1.3 Đường đi, chu trình, liên thơng 1.3.1 Đường đi, chu trình 1.3.2 Liên thông 1.4 Các thuật toán duyệt đồ thị 11 Chương ĐỒ THỊ CÂY 15 2.1 Mở đầu Cây 15 2.2 Cây, phân loại, cấu tạo đặc điểm 17 2.2.1 Cây có gốc 17 2.2.2 Cây m-phân đầy đủ 19 2.2.3 Một số mơ hình ứng dụng 21 2.3 Các phương pháp duyệt 24 2.3.1 Mở đầu 24 2.3.2 Hệ địa phổ dụng 24 2.4 Cây bao trùm 25 2.4.1 Định nghĩa 25 2.4.2 Những thuật toán xây dựng bao trùm 27 2.5 Bài tốn tìm bao trùm có trọng lượng nhỏ 28 2.5.1 Cây bao trùm nhỏ nhất: 28 2.5.2 Thuật tốn tìm bao trùm nhỏ 29 Chương CÂY NHỊ PHÂN VÀ ỨNG DỤNG TRONG TIN HỌC 39 3.1 Cây nhị phân 39 3.1.1 Định nghĩa 39 3.1.2 Một số tính chất nhị phân 39 3.1.3 Thuật toán duyệt 39 3.1.4 Các ứng dụng thuật toán duyệt 46 3.1.5 Biểu diễn tổng quát nhị phân 48 3.2 Ứng dụng 50 3.2.1 Cây tìm kiếm nhị phân 50 3.2.2 Mã tiền tố 51 KẾT LUẬN 58 TÀI LIỆU THAM KHẢO 59 MỞ ĐẦU Lý thuyết đồ thị ngành khoa học phát từ lâu lại có nhiều ứng dụng đại.Những tư tưởng lý thuyết đồ thị đề xuất từ năm đầu kỉ XVIII nhà toán học lỗi lạc người Thụy Sĩ Leonhard Euler.Từ lý thuyết đồ thị ngày khẳng định vị trí quan trọng việc áp dụng để giải nhiều toán từ lĩnh vực.Tuy nhiên, kiến thức hồn tồn mới, khơng đề cập q trình học tập sinh viên sư phạm tốn Với kiến thức hữu ích lý thuyết đồ thị, bị thu hút thực mong muốn tìm hiểu chiếm lĩnh, bồi đắp cho tri thức Do đó, tơi chọn đề tài “Đồ thị ứng dụng” Nội dung khóa luận tơi khơng phải kết tìm với tinh thần học hỏi kiến thức mới, hi vọng đề tài đem lại nhiều kiến thức bổ ích cho thân cho độc giả Nội dung khóa luận gồm ba chương: Chương 1: Những kiến thức đồ thị vô hướng Chương 2: Đồ thị Chương 3.Cây nhị phân số ứng dụng tin học Tuy có nhiều cố gắng, song hạn chế thời gian lực thân, nên khóa luận khơng tránh khỏi sai sót, mong quan tâm góp ý thầy cô bạn Em xin chân thành cảm ơn! Chƣơng NHỮNG KIẾN THỨC CƠ BẢN VỀ ĐỒ THỊ 1.1 Khái niệm đồ thị Lý thuyết đồ thị lĩnh vực toán học phát triển từ lâu lại có nhiều ứng dụng đại đặc biệt ứng dụng tin học ngày Những ý tưởng đưa từ kỷ 18 nhà toán học LeonhardEuler dùng đồ thị để giải toán cầu Kưnigsberg Mơ hình đồ thị xuất nhiều khoa học sống hàng ngày Đồ thị tỏ có hiệu việc giải tốn nhiều lĩnh vực khác Ví dụ: sơ đồ máy công ty hay mạng lưới giao thông địa điểm khu vực biểu diễn đồ thị Đồ thị gán trọng số để giải tốn tìm đường ngắn nhất, xây dựng hệ thống giao thông đảm bảo tính liên thơng với chi phí nhỏ nhất… Ta hình dung đồ thị tập hữu hạn đối tượng mối liên hệ đối tượng Sơ đồ biểu diễn hệ thống tuyến bay hãng hàng khơng hình ảnh đồ thị Các đối tượng sân bay, đường bay thẳng biểu diễn mối liên hệ sân bay đầu cuối tuyến Có nhiều loại đồ thị xây dựng dựa vào cấu trúc đồ thị, cụ thể tùy thuộc vào xác định mối liên hệ đối tượng Trong khn khổ khóa luận này, tơi đề cập tới ba loại đồ thị: đồ thị vô hướng, đồ thị có hướng đồ thị có trọng số định nghĩa sau: Định nghĩa 1.1.Một đồ thị vô hướng G cặp có thứ tự G V , E , V tập hữu hạn; E tập với phần tử tập hai phần tử V, E {u, v u, v V , u v} Các phần tử V gọi đỉnh, tập đỉnh G ký hiệu V (G) Các phần tử E gọi cung, tập cạnh đồ thị vô hướng G ký hiệu E (G) Nhưng để đơn giản ta viết “đỉnh v V ” hay “cạnh e E ”.Cho a, b V , tồn e a, b e cạnh G với hai đỉnh đầu mút a, b hay a, b hai đỉnh liên thuộc với e Cạnh e a, b thường ký hiệu ngắn gọn ab hay ba Ở khn khổ khóa luận này, ta xét tới đơn đồ thị, khơng xét tới đồ thị có khuyên đa đồ thị Do nhắc đến đơn đồ thị, ta ngầm hiểu đơn đồ thị vơ hướng Có thể biểu diễn đồ thị cách trực quan sau: Các đỉnh V biểu diễn vòng tròn nhỏ (rỗng đặc), cạnh biểu diễn đường cong (đường thẳng) nối đầu mút cạnh Ví dụ 1.1 Cho G V , E với V a, b, c, d , f , g E ad , db, dc, bc, cf , cg , gf Khi biểu diễn đồ thị vơ hướng G b f c d a g Hình 1.1.Đơn đồ thị G Giả sử mạng lưới giao thông gồm trạm xe bus đường chúng, trạm ln có khơng q đường trực tiếp, khơng có đường quay vòng từ trạm tới Ta biểu diễn mạng lưới giao thơng mơ hình đồ thị sau: trạm đỗ xe đỉnh, đường trực tiếp hai trạm cạnh Ta có hình ảnh xác đồ thị 139 Nguyễn Lương Bằng 269 Hồ Tùng Mậu 18 Lê Duẩn Bx Kim Mã 1028 Láng CT.Cầu Giấy Hình 1.2: Mạng lưới xe bus 222 Xã Đàn Các đường giao thông chạy theo chiều Chúng ta dùng đồ thị có hướng để mơ hình hóa mạng Định nghĩa 1.2.Một đồ thị có hướng G cặp có thứ tự G V , E , V tập hữu hạn, E tập tích Đề V V Tương tự, khuôn khổ khóa luận này, ta xét đồ thị có hướng Do nhắc tới đồ thị có hướng ta hiểu đơn đồ thị có hướng.Tuy nhiên đồ thị có hướng phục vụ riêng cho phần kiến thức đồ thị có gốc kiến thức đồ thị có hướng ta gần không đề cập tới, xây dựng cho đơn đồ thị vô hướng Các phần tử V gọi đỉnh, phần tử E gọi cung đồ thị vô hướng G a, b E a, b gọi cung G với đỉnh đầu a, đỉnh cuối b có hướng từ a tới b.Khi cho G V , E đồ thị có hướng, Cạnh a, b E thường ký hiệu ngắn gọn ab với a đỉnh đầu b đỉnh cuối; ba cạnh với b đỉnh đầu, a đỉnh cuối Biểu diễn đồ thị có hướng mặt phẳng trực quan tương tự biểu diễn đồ thị vô hướng: Các đỉnh V biểu diễn vòng tròn nhỏ (rỗng đặc), cung biểu diễn đường cong có hướng (với mũi tên) từ đỉnh đầu tới đỉnh cuối Ví dụ 1.2 Cho đồ thị có hướng G V , E với V a, b, c, d , f , g E ad , db, dc, bc, cf , cg , gf Khi biểu diễn đồ thị có hướngG b f c a d g Hình 1.3.Đơn đồ thị G a d b g e h i k Hình 3.3.Đồ thị Y b d a g e h b i e g h b k i a k i h d e k g d a Hình 3.8 Duyệt có gốc Y theo kiểu hậu thứ tự Hình vẽ 3.8 mô cách duyệt hậu thứ tự Cách tổng quát cho cách duyệt: Trước tiên ta vẽ đường cong bao quanh xét, xuất phát từ gốc chuyển dộng dọc theo cách cạnh Ta liệt kê đỉnh theo kiểu tiền thứ tự cách liệt kê đỉnh đường cong qua Ta nhận danh sách đỉnh theo kiểu trung thứ tự cách liệt kê ngang qua lần thứ hai Ta nhận danh sách 45 đỉnh kiểu hậu thứ tự cách liệt kê đỉnh ngang qua lần thứ hai để trở cha 3.1.4 Các ứng dụng thuật toán duyệt Các ký pháp trung tố, tiền tố hậu tố Trong thực tế, việc tính tốn với người đơn giản Trải qua trình học tập, làm việc với biểu thức phức tạp cần tính tốn, hồn tồn làm việc với qui tắc nhân chia trước, cộng trừ sau, ngoặc trước, ngồi ngoặc sau… Tuy nhiên máy tính phân biệt người đâu phép tính cần thực trước, máy tính thực theo việc truy nhập liệu bước lý sử dụng đồ thị Khi biểu diễn phép tính biểu thức phức tạp bất kỳ, biểu thức số học (những tổ hợp tập hợp) sử dụng công cụ có gốc sắp, đỉnh biểu thị phép tính + (cộng), - (trừ), * (nhân), / (chia) (lũy thừa), …; biểu thị số hay biến Mỗi phép toán tác động lên bên trái bên phải (theo thứ tự này) Ví dụ 3.4 Tìm có gốc biểu diễn biểu thức: (( x y) 4) / (( x 4) / 3) / + x y x / - x y / + x x 4 y + x 3.9 a Hình 3.9.Cây nhị phân biểu diễn (( x y) 4) / (( x 4) / 3) Cây nhị phân cho biểu thức xây dựng từ lên hình vẽ 46 Trong phép toán (( x y) 4) / (( x 4) / 3) trước tiên ta xây dựng cho biểu thức x y Sau kết hợp thành x y Cũng vậy, ta xây dựng x sau kết hợp thành x 4 / Cuối hai biểu thị x y x 4 / kết hợp với để nhận có gốc biểu diễn x y / x / Các bước thể hình 3.9 Dạng tiền tố hay gọi ký pháp Ba Lan biểu thức thực chất biểu thức nhận duyệt có gốc thứ tự theo kiểu tiền thứ tự Điều tương tự với ký pháp dạng hậu tố - hay ký pháp Ba Lan ngược Ví dụ 3.5.Tìm ký pháp Ba Lan biểu thức (( x y) 4) / (( x 4) / 3) Ký pháp Ba Lan tìm duyệt theo kiểu tiền thứ tự nhị phân ứng với biểu thức hình 3.9a Vậy ký pháp Ba Lan đồ thị hình 3.9 là: / xy / x43 Ví dụ 3.6.Cũng với biểu thức (( x y) 4) / (( x 4) / 3) tìm ký pháp Ba Lan ngược Ký pháp Ba Lan ngược tìm duyệt theo kiểu hậu thứ tự nhị phân ứng với biểu thức hình 3.9a Vậy ký pháp Ba Lan ngược đồ thị hình 3.9 là: xy / x / Như vậy: ký pháp cách biểu diễn xác biểu thức phức tạp cho máy tính thay cách viết tốn người Vậy vấn đề ngược lại đặt có dạng biểu thức nhận duyệt theo kiểu khác có tìm kết xác, thứ tự tính tốn biểu thức xác phép tốn hay ko? Điều hồn tồn dựa vào định nghĩa dạng duyệt dạng ký pháp tương ứng Ví dụ3.7 Tính giá trị biểu thức tiền tố / 2 4 / 5 Các bước để tính giá trị biểu thức tiến hành từ phải sang trái thực phép toán với toán hạng bên phải Kết hình 3.10 Kết nhận 4: 47 /↑-244/+573 12 Bước +4 /↑-2444 / ↑ - 4 / 12 Bước + -2 Bước / ↑(-2) 4 / 16 16 Bước Bước Hình 3.10.Tính giá trị biểu thức tiền tố Ví dụ3.8 Tính giá trị biểu thức hậu tố xy 84 3/ / Các bước tính giá trị biểu thức tiền hành từ bên trái thực phép toán với hai toán hạng bên trái toán tử, hình 3.11 Kết thu 24–4↑84+3// (-2) ↑ + / / -2 16 Bước 16 + / / 12 Bước Bước 1612 / / 16 / Bước 4 Bước Hình 3.10.Tính giá trị biểu thức hậu tố 3.1.5 Biểu diễn tổng quát nhị phân Với tổng quát bất kì, khó kiểm sốt số lượng đỉnh mức khác bậc đỉnh Trong điều hoàn toàn rõ ràng với nhị phân Hơn máy tính, việc biểu diễn tổng quát gặp khó khăn lãng phí việc xây dựng thao tác nhị 48 phânđã khắc phục điều này, đơn giản nhiều việc xây dựng cácthao tác tổng qt Vì khơng q cần thiết sử dụng đến tổng qt chuyển đổi cách khéo léo tổng quát với dạng đơn giản nhị phân để thực thao tác dễ dàng Ta biến đổi tổng quát thành nhị phân theo quy tắc sau: - Giữ nút trái làm trái - Các nút lại anh em nút trái biến đổi thành nút phải Vậy câu hỏi ngược lại đặt từ nhị phân bất kì, khơi phục lại tổng quát không? Câu trả lời tùy trường hợp mà tạo tổng quát từ nhị phân Còn điều kiện chung để đánh giá hồn tồn chưa có Điều phụ thuộc vào cấu trúc riêng điều kiện cụ thể Có điều chắn để lọc qua tổng số nút trái phải so với nút phải Ví dụ 3.9.Hãy biểu diễn tổng quát đồ thị Y nhị phân a a d b b c e h g f i d c e k h f i g k Hình 3.15.Đồ thị T Hình 3.14.Đồ thị Y Hình3.16 Biểu diễn tổng quát Y nhị phân T 3.1.6 Ý nghĩa thực tiễn nhị phân Trên thực tế nhị phân có nhiều ứng dụng, mà ta kể đến thể dạng nhị phân Ngồi nhị phân ứng dụng vào nhiều tốn mơ hình khác mà phổ biến kinh điển nhị phân tìm kiếm mã tiền tố huffman 49 3.2 Ứng dụng 3.2.1 Cây tìm kiếm nhị phân 3.2.1.1 Cây tìm kiếm nhị phân ý nghĩa Bài toán đặt hệ thống máy tính có đa dạng liệu thơng tin khác với khối lượng khổng lồ.Vậy cần phải lưu trữ để dễ dàng định vị tìm kiếm phần tử danh sách Đây công việc thường xuyên quan trọng tin học Vì cần phải đưa thuật tốn tìm kiếm có hiệu phần tử phần tử xếp theo thứ tự Hay nói cách khác đưa thuật xếp có quy tắc định mà dễ dàng tìm phần tử cần tra cứu bước xây dựng thuật tốn Điều thực tìm kiếm nhị phân Cây tìm kiếm nhị phân nhị phân nghĩa đỉnh có khơng q Mỗi đỉnh bên trái, bên phải Vậy tương đương với không đỉnh có bên phải hay bên trái Mỗi đỉnh gán khóa tìm kiếm gán theo thủ tục sau: khóa đỉnh lớn khóa tất đỉnh thuộc bên trái nhỏ khóa tất đỉnh thuộc bên phải 100 50200 nên ta tiếp tục phía bên phải 200 250 < 300 nên ta phía tay trái 300 Ta tìm 250, kết thúc trình tìm kiếm 3.2.2 Mã tiền tố 3.2.2.1 Mã tiền tố Trong khoa học máy tính để mã hóa kí hiệu (kí tự, chữ số, ) ta thay chúng xâu nhị phân-xâu kí tự độ dài định bao gồm số 0,1 với thứ tự xếp khác nhau, gọi từ mã kí hiệu Chẳng hạn mã ASCII, mã hóa cho 256 kí hiệu biểu diễn nhị phân số từ đến 255, từ mã gồm bít 51 Trong ASCII từ mã kí tự "a" 1100001, kí tự "A" 1000001 Trong cách mã hóa từ mã tất 256 kí hiệu có độ dài (mỗi từ mã bít) Nó gọi mã hóa với độ dài khơng đổi Một ví dụ đơn giản khác, tốn mã hóa đoạn văn sử dụng bảng chữ tiếng anh dãy nhị phân Dễ dàng thấy ta có 26 chữ dấu cách ta cần xâu nhị phân có độ dài từ bit 0; tạo 25 32 chuỗi phân biệt khác Từ ta ký hiệu chữ a 00001 chữ b 00002, …Như dễ dàng đưa nhận xét tổng số bít dùng để mã hóa ký hiệu gấp lần số kí tự dùng văn Khi tra mã, ta tra theo xâu bit đoạn văn dịch Tuy nhiên có chữ khơng sử dụng lần nào, có chữ lại xuất với tần xuất lớn Vậy tìm lược đồ mã hóa cho liệu mã hóa cần dùng số bit khơng để tiết kiệm nhớ giảm thời gian truyền liệu? Việc hồn tồn có tính khả thi Đối với chữ xuất thường xuyên nhất, ta mã hóa chúng xâu nhị phân ngắn nhất, chữ xuất hơn, ta mã hóa xâu nhị phân có độ dài lớn Tuy nhiên mã hóa chữ với độ dài bất định, ta cần phải có cách xác định xem bit ứng với chữ bắt đầu đâu kết thúc đâu Chẳng hạn kí hiệu chữ a 0, chữ b 1, chữ c 01 đoạn mã 01001 ứng với abaab, abac, cac, caab.Như vậy, việc giải mã gặp khó khăn việc chọn lựa đoạn văn Để đảm bảo không xâu nhị phân ứng với dãy chữ cái, từ mã tập hợp kí hiệu cho từ mã ký hiệu không tiền tố (phần đầu) từ mã ký hiệu khác mã mã xây dựng gọi mã tiền tố Ví dụ 3.11 Giả sử mã hóa từ "MUMMY", tập ký hiệu cần mã hóa gồm chữ "M","U","Y" - Nếu mã sử dụng mã nhị phân cần dùng bit cho chữ Ta đặt "M"=00, "U"=01, "Y"=10 Khi mã hóa MUMMY 0001010010 Để giải mã ta đọc hai bit đối chiếu với bảng mã theo quy tắc mã thu 52 - Nếu mã hóa "M"=0, "U"=01, "Y"=10 ta 0010010 Tuy nhiên mã hóa ngược trở lại từ đoạn mã 0010011 ta có thu MUMMY, MUMYU, MMYMY… vi phạm mã tiền tố thân mã "M" tiền tố từ mã "U" Muốn mã hóa xác ta bắt buộc phải đặt dấu “,” ngăn cách - Nếu mã hóa "M”=0, "U"=10, "Y"=11 mã mã tiền tố Với mã tiền tố mã hóa xâu "MUMMY" ta có 0100011 Từ ví dụ thấy mã hóa xâu "MUMMY" mã độ dài cố định 10 bít, mã tiền tố đưa bít, tiết kiệm 20% Bài tốn đặt mã tiền tố tối ưu chưa? 3.2.2.2 Mã huffman Cho tập A ký hiệu tần suất chúng Tìm mã tiền tố với tổng độ dài mã hóa nhỏ Bài tốn thứ hai hình thành giải ta có đáp án cho câu hỏi Nó dựa số lần xuất tần suất xuất kí tự cần mã hóa để xây dựng mã nhị phân cho kí tự cho dung lượng sau mã hóa nhỏ cách mã hóa kí tự xuất nhiều lần với mã tương ứng ngắn ngược lại 3.2.2.3 Bài tốn mã hóa chuỗi văn mã huffman Nguyên lý thuật mã hóa huffman mã hóa bytes tệp liệu nguồn biến nhị phân Những ký tự xuất nhiều có mã ngắn Bước 1: Lập bảng phân bố tần xuất chữ xuất đoạn văn bảntheo thứ tự từ điển cần mã hóa bao gồm space (dấu cách) đặt cuối Bước 2:Tìm hai kí tự có trọng số nhỏ ghép lại thành một, trọng số ký tự tổng trọng số hai ký tự đem ghép Bước 3: Trong số lượng ký tự danh sách lớn thực bước 1, không thực bước bốn Bước 4:Tách ký tự cuối tạo nhị phân với qui ước bên trái mã 0, bên phải mã Cây Huffman gồm n chứa số chữ tương ứng 53 Ví dụ 3.12:Mã hóabằng mã huffman tên sau “DUONG PHUONG HOA” Bước 1:: Lập bảng phân bố tần xuất chữ xuất đoạn văn theo thứ tự từ điển cần mã hóa bao gồm space (dấu cách) đặt cuối Ký tự Tần số A D G H N O P U SPACE 1 2 2 Các bước thể hình vẽ - Ta có A D hai kí tự có tần số nhỏ nhất, A M1 đứng trước D theo bảng chữ nên A đỉnh bên trái, D đỉnh bên phải, gộp A D lại thành M1 M1 có trọng lượng tổng D A tần số - Ta ký tự P có tần số nhỏ P 1, P M1 nên P bên trái M1 P M1 có trọng số M M2 P M1 A D 1 - Ta thấy, ký tự nhỏ n h g u space mà M ta thực lại bước 1, ghép G H, N U M3 , M Do M3 , M nhỏ M nên đứng bên phải hình vẽ 54 M2 M3 P M1 1 A D 1 H G 2 M4 U N - Do ký tự “space” có tần số nhỏ tần số M , M3 , M nên “space” ghép với M có giá trị nhỏ ( M ) ta M với giá trị Do M > M3 , M nên M chuyển sang bên phải M4 M3 G 4 U N H M6 M2 SPACE P M1 55 A D 1 - Ta lại ký hiệu cuối O với tần số xuất 3.6 Vậy O ghép theo có tần số M nhỏ Ta ghép với M3được M6 Do M6lớn M5 M4 nên M6được đưa bên phải M3 G M5 H M2 SPACE P M1 M6 O A D 1 M4 U N - Cuối hợp M5và M3 thànhM7và M7 có tổng tần xuất > nên M7đứng bên phải M6 Gộp M7và M6thành M8 có tổng tần xuất 16 ta cần tìm Vậy mã huffman “DUONG PHUONG HOA” tương ứng là: 11111011000101001101110101011000101001101010011110 56 M8 16 M7 M6 O M4 M N U 2 M5 H G SPACE M2 P 57 M1 A D 1 KẾT LUẬN Khóa luận: “Đồ thị ứng dụng” nghiên cứu tổng quan vấn đề: kiến thức đồ thị, đồ thị vài ứng dụng đồ thị Khóa luận hoàn thành nhiệm vụ nghiên cứu đề Tuy nhiên với tính chất báo cáo khóa luận tốt nghiệp nên đề tài chưa sâu vào nghiên cứu hay chi tiết mà tập trung hiểu trình bày hiểu biết Tốn học rời rac, dừng lại cách nhìn tổng thể Qua khóa luận này, thân em khơng lĩnh hội thêm tri thức Tốn rời rạc mà có hiểu biết định nghiên cứu khoa học Do thời gian nghiên cứu có hạn khả thân nhiều hạn chế nên đề tài khơng tránh khỏi thiếu sót Vì vậy, em mong nhận đóng góp ý kiến thầy bạn để đề tài hoàn thiện Em xin chân thành cảm ơn! 58 TÀI LIỆU THAM KHẢO [1] Ngô Đắc Tân, Lý thuyết tổ hợp đồ thị, Nhà xuất Đại học Quốc Gia Hà Nội, 2004 [2] Kenneth H Rosen, Toán rời rạc ứng dụng tin học, Nhà xuất Khoa học Kỹ Thuật, Hà Nội 1997 [3] Nguyễn Đức Nghĩa - Nguyễn Tơ Thành, Tốn rời rạc, Nhà xuất Đại Học Quốc Gia Hà Nội, 1997 [4] Quách Tuấn Ngọc, Ngơn ngữ lập trình Pascal, Nhà xuất Đại học Bách khoa, 1997 59 ... 1.7 Một đồ thị vơ hướng có số chẵn đỉnh bậc lẻ 1.2.2 Xây dựng đồ thị từ đồ thị cũ Trong giải tốn đồ thị, đơi ta quan tâm phận đồ thị ban đầu Định nghĩa 1.8 .Đồ thị G V , E gọi đồ thị G ... cho đồ thị đồ thị có n thành phần liên thông 14 Chƣơng ĐỒ THỊ CÂY 2.1 Mở đầu Cây Sơ lược lịch sử hình thành phát triển: Một đồ thị liên thông chu trình gọi Cây đồ thị mà hai đỉnh nối với đường Cây. .. khổ khóa luận này, ta xét tới đơn đồ thị, không xét tới đồ thị có khuyên đa đồ thị Do nhắc đến đơn đồ thị, ta ngầm hiểu đơn đồ thị vơ hướng Có thể biểu diễn đồ thị cách trực quan sau: Các đỉnh