BỘ GIÁO DỤC ĐÀO TẠO
TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI THÀNH PHỐ HỒ CHÍ MINH
 KHOA CÔNG NGHỆ THÔNG TIN 
Môn học: Cấu trúc rời rạc
ĐỀ TÀI TIỂU LUẬN
“TÌM KIẾM TRÊN ĐỒ THỊ- ĐỒ THỊ EULER VÀ ĐỒ THỊ HAMILTON
CÂY CÂY KHUNG CỦA ĐỒ TH
TÌM ĐƯỜNG ĐI NGẮN NHẤT ’
Giảng viên : Trần Thế Vinh
Sinh viên thực hiện : Trần Minh Thái-051205002504
Lớp học phần: CN2301C-010112204401
Năm học: 2024-2025
TP Hồ Chí Minh, Tháng 6, năm 2024.
MỤC LỤC
PHẦN I: MỞ ĐẦU
1.Lời Mở Đầu ...............................................................................................................................
2.Mục đích ....................................................................................................................................
3.Đối tượng ...................................................................................................................................
PHẦN II: NỘI DUNG
CHƯƠNG 1: Đ THỊ, TÍNH LIÊN THÔNG VÀ PHƯƠNG PHÁP MA TRẬN K
A. Sơ Lược về đồ thị.........................................................................................................................
B. Biểu diễn đồ thị và Phương pháp ma trận kề ...........................................................................
C. Tính liên thông và kiểm tra tính liên thông...............................................................................
CHƯƠNG 2: TÌM KIẾM TRÊN ĐỒ THỊ - ĐỒ THỊ EULER VÀ ĐỒ THỊ HAMILTON
A. Đồ thị Euler
I. Khái niệm...............................................................................................................................
II. Định Lý...................................................................................................................................
III. Thuật toán (mã giải)..............................................................................................................
IV. Sơ đồ khối...............................................................................................................................
V. Code, Input/Output ...............................................................................................................
VI. Tìm đường đi ngắn nhất........................................................................................................
B. Đồ thị Hamilton
I. Khái niệm...............................................................................................................................
II. Định lý-Nhận xét....................................................................................................................
III. Thuật toán (mã giải)-Tìm 1 đường đi Hamiton bất kì........................................................
IV. Sơ đồ khối...............................................................................................................................
V. Code, Input/Output................................................................................................................
C. Ưu và Nhược điểm, so sánh 2 thuật toán......................................................................................
CHƯƠNG 3: CÂY VÀ KHUNG CỰC TIỂU CỦA ĐỒ THỊ
A. Thuật toán Prim
I. Khái niệm....................................................................................................................................
II. Điều kiện tồn tại.........................................................................................................................
III. Thuật toán (mã giải)...................................................................................................................
IV. Sơ đồ khối...................................................................................................................................
V. Code, Input/Output....................................................................................................................
B. Thuật toán Kruskal
I. Khái niệm...................................................................................................................................
II. Điều kiện tồn tại........................................................................................................................
III. Thuật toán (mã giải)..................................................................................................................
IV. Sơ đồ khối..................................................................................................................................
V. Code, Input/Output...................................................................................................................
C. Ưu và Nhược điểm, so sánh 2 thuật toán......................................................................................
CHƯƠNG 4: TÌM ĐƯỜNG ĐI NGẮN NHẤT
A. Bài toán đường đi ngắn nhất........................................................................................................
B. Thuật toán Dijkstra
I. Khái niệm....................................................................................................................................
II. Điều kiện tồn tại.........................................................................................................................
III. Thuật toán (mã giải)...................................................................................................................
IV. Sơ đồ khối...................................................................................................................................
V. Code, Input/Output....................................................................................................................
C. Thuật toán Bellman – Ford
I. Khái niệm....................................................................................................................................
II. Điều kiện tồn tại.........................................................................................................................
III. Thuật toán (mã giải)...................................................................................................................
IV. Sơ đồ khối...................................................................................................................................
V. Code, Input/Output....................................................................................................................
D. Ưu và Nhược điểm, so sánh 2 thuật toán.....................................................................................
PHẦN III: KẾT LUẬN..................................................................................................................
TÀI LIỆU THAM KHẢO..............................................................................................................
4
PHẦN I: MỞ ĐẦU
1. Lời Mở Đầu:
Trong lĩnh vực khoa học máy tính, cấu trúc rời rạc đồ thị luôn được coi quan
trọng trong việc hình hóa giải quyết các vấn đề phức tạp. Trên thế giới này, vai
trò của đồ thị được xem xét một cách sâu sắc. Trong bài viết này, khám phá về tìm kiếm
trên đồ thị sẽ được tiến hành, bao gồm cả việc nghiên cứu về đồ thị Euler Hamilton,
cũng như cấu trúc cây và khung cực tiểu của đồ thị.
Bắt đầu bằng việc tìm hiểu về hoạt động của thuật toán Euler Hamilton trong
việc bao phủ từng cạnh của đồ thị một cách duy nhất. Tiếp theo, khám phá về cây
khung cực tiểu, hai khái niệm quan trọng trong việc phân tích cấu trúc của đồ thị sẽ được
tiến hành. Ngoài ra, thuật toán Bellman-Ford cũng sẽ được xem xét để tìm hiểu cách
giải quyết các bài toán về con đường ngắn nhất trong đồ thị có trọng số âm.
Tập trung vào việc tìm kiếm con đường ngắn nhất trong đồ thị thông qua thuật
toán Dijkstra sẽ được đi vào chi tiết. Cuối cùng, hai phương pháp tìm cây bao trùm nhỏ
nhất - thuật toán Prim Kruskal - sẽ được xem xét kỹ lưỡng.
Với sự kết hợp của các thuật toán này, bài viết sẽ mang đến một cái nhìn tổng
quan và chi tiết về cách sử dụng và ứng dụng các cấu trúc và thuật toán đồ thị trong khoa
học máy tính.
5
2. Mục đích :
Mục Đích:
Tìm hiểu và phân tích các thuật toán quan trọng trong lĩnh vực đồ thị: Prim,
Kruskal, Dijkstra, Bellman – Ford, Euler và Hamilton.
i đặt và thực thi các thuật toán trên máy tính để hiểu rõ cách hoạt động và
ứng dụng của chúng.
So sánh hiệu suất và độ phức tạp tính toán của các thuật toán để đưa ra nhận
xét và đánh giá về tính hiệu quả của mỗi thuật toán.
3. Đối tượng :
Đối Tượng:
Sinh viên, học viên, và những người quan tâm đến lĩnh vực thuật toán và đồ
thị.
c nhà nghiên cứu và chuyên gia trong lĩnh vực khoa học máy tính và toán
học.
Giảng viên và sinh viên đang nghiên cứu hoặc giảng dạy về các thuật toán đồ
thị.