Đề tài Tìm cây khung có trọng lượng nhỏ nhất bằng giải thuật Prim
          
        
            
               
            
 
            
                
                    Hướng dẫn chạy chương trình: 
1. Khởi động tập tin main.exe 
 2. Nhập dữ liệu cho đồ thị bấm phím số 1 3. Vẽ đồ thị trên màn hình bấm phím số 2 4. Chạy giải thuật Prim bấm phím số 3 5. Thốt và lưu dữ liệu hiện hành vào tệp graph.txt bấm phím số 4 6. Duyệt đồ thị theo chiều sâu bấm phím số 5 7. Duyệt đồ thị theo chiều rộng bấm phím số 6
                
              
                                            
                                
            
 
            
                 17 trang
17 trang | 
Chia sẻ: tienthan23 | Lượt xem: 4194 | Lượt tải: 2 
              
            Bạn đang xem nội dung tài liệu Đề tài Tìm cây khung có trọng lượng nhỏ nhất bằng giải thuật Prim, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Đề Tài:Tìm cây khung có trọng lượng nhỏ nhất bằng giải thuật Prim GVHD: Nguyễn Thành Quí 
SVTH: Huỳnh Hải Đăng Trang 1/17 
ĐÁNH GIÁ KẾT QUẢ THỰC HIỆN NIÊN LUẬN 1 
(Học kỳ II, Niên khóa 2008-2009) 
GIÁO VIÊN HƯỚNG DẪN : 
STT HỌ VÀ TÊN MSCB 
1 Nguyễn Thành Quí 001945 
SINH VIÊN THỰC HIỆN : 
STT HỌ VÀ TÊN MSSV THƯỞNG 
(Tối đa 1 điểm) 
ĐIỂM 
1 Huỳnh Hải Đăng 1081642 
I. HÌNH THỨC( Tối đa 0,5 điểm) 
Bìa (tối đa 0,25 điểm) 
 Các tiêu đề : Trường ĐHCT, Khoa CNTT, Bộ môn 
 Các niên luận : 1 
 Tên đề tài 
 Giáo viên hướng dẫn : chức danh, họ tên 
 Thông tin về sinh viên thực hiện : họ tên, mã số, lớp 
 Năm thực hiện 
Bố cục (tối đa 0,25 điểm) 
 Nhận xét của giáo viên hướng dẫn và giáo viên chấm 
 Mục lục : cấu trúc chương, mục và tiểu mục 
 Phụ lục (nếu có) 
 Tài liệu tham khảo 
II. NỘI DUNG (Tối đa 3,5 điểm) 
Tổng Quan (tối đa 0,5 điểm) 
 Mô tả bài tốn, mục tiêu cần đạt được (0,25 điểm) 
 Hướng giải quyết và kế hoạch thực hiện (0,25 điểm) 
Lý thuyết (tối đa 0,5 điểm) 
 Các khái niệm sử dụng trong đề tài 
 Kết quả vận dụng lý thuyết trong đề tài 
Ứng dụng (tối đa 2,0 điểm) 
 Phân tích yêu cầu bài tốn, xây dựng các cấu trúc dữ liệu cần thiết (0,5 
điểm) 
 Giải thuật (Lưu đồ - Ngôn ngữ giả ) (1,0 điểm) 
 Giới thiệu chương trình (0,5 điểm) 
Kết luận (tối đa 0,5 điểm) 
 Nhận xét kết quả đạt được 
 Hạn chế 
 Hướng phát triển 
III. CHƯƠNG TRÌNH DEMO (Tối đa 5,0) 
Giao diện thân thiện với người dùng (tối đa 1,0 điểm) 
Hướng dẫn sử dụng (0,5 điểm) 
Kết quả thực hiện đúng với kết quả cảu phần ứng dụng (3,5 điểm) 
 Cần Thơ, ngày 4 tháng 4 năm 2010 
 GIÁO VIÊN HƯỚNG DẪN 
Đề Tài:Tìm cây khung có trọng lượng nhỏ nhất bằng giải thuật Prim GVHD: Nguyễn Thành Quí 
SVTH: Huỳnh Hải Đăng Trang 2/17 
NHẬN XÉT CỦA GIÁO VIÊN 
     
-------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------
 Cần Thơ, ngày.. tháng ...... năm ...... 
 Giáo viên hướng dẫn 
MỤC LỤC 
Đề Tài:Tìm cây khung có trọng lượng nhỏ nhất bằng giải thuật Prim GVHD: Nguyễn Thành Quí 
SVTH: Huỳnh Hải Đăng Trang 3/17 
     
NHẬN XÉT CỦA GIÁO VIÊN ................................................................................................. 2 
MỤC LỤC ................................................................................................................................. 3 
TỔNG QUAN ............................................................................................................................ 4 
 I. Các mục tiêu cần đạt được ................................................................................................... 4 
 II. Hướng giải quyết ............................................................................................................... 4 
 III. Kế họach thực hiện ........................................................................................................... 5 
LÝ THUYẾT ............................................................................................................................. 6 
 I. Các khái niệm chính ............................................................................................................ 6 
 II. Các cách biểu diễn đồ thị ................................................................................................... 7
 III. Duyệt các đỉnh của đồ thị .................................................................................................. 8 
 IV .Giải thuật Prim ................................................................................................................. 8 
Ứng Dụng .................................................................................................................................10 
 I. Lưu đồ giải thuật Prim ........................................................................................................10 
 II. Lưu đồ duyệt cây theo chiều sâu tại đỉnh i .........................................................................11 
 III. Lưu đồ duyệt cây theo chiều rộng tại đỉnh i .....................................................................11 
 IV. Giới thiệu chương trình ................................................................................................... 12 
KẾT LUẬN- ĐÁNH GIÁ .........................................................................................................16 
 I. Kết quả đạt được ................................................................................................................16 
 II. Hạn chế của chương trình ..................................................................................................16 
 III. Hướng phát triển. .............................................................................................................16 
PHỤ LỤC .................................................................................................................................17 
 Hướng dẫn sử dụng ...............................................................................................................17 
Các tài liệu tham khảo ...............................................................................................................17 
Đề Tài:Tìm cây khung có trọng lượng nhỏ nhất bằng giải thuật Prim GVHD: Nguyễn Thành Quí 
SVTH: Huỳnh Hải Đăng Trang 4/17 
TỔNG QUAN 
 
 Tìm cây bao trùm nhỏ nhất (tiếng Anh: minimum spanning tree) là bài tốn tối ưu có 
nhiều ứng dụng trong thực tế. Nó là bài tốn tìm hệ thống liên thông với chi phí nhỏ nhất. Hai 
thuật tốn tìm cây bao trùm nhỏ nhất thường được nhắc đến là thuật tốn Prim và thuật tốn 
Krusskal. 
Cho G=(X,E) là một đồ thị liên thông. Ngồi ra, một hàm trọng số W(e), xác định trên tập 
các cạnh E của G. Cả hai thuật tốn Prim và Kruskal đều dựa trên tư tưởng của các giải thuật tham 
ăn : Ở mỗi bước của thuật tốn ta chọn và bổ sung vào cây cạnh có trọng số nhỏ nhất có thể. Ở đây 
ta chỉ đề cập đến thuật tốn Prim 
Giải thuật Prim 
Vài nét về R. C. Prim 
Robert Clay Prim (sinh 1921 tại Sweetwater, Texas) là một nhà tốn học và khoa học máy 
tính Mỹ. Năm 1941 ông đã lấy bằng cử nhân ở khoa kỹ thuật điện đại học Princeton. Sau này 
năm 1949, ông nhận bằng Ph.D. về tốn học cũng tại đây. Giải thuật mang tên Prim được tìm ra từ 
năm 1930 bởi nhà tốn học Vojtěch Jarník và do Prim hồn thiện vào năm 1957. asd 
Mô tả 
Gọi T là cây bao trùm sẽ xây dựng 
1. Chọn một đỉnh s bất kỳ của G cho vào cây T. Khi đó T là một cây chỉ có một đỉnh và chưa có 
cạnh nào. 
2. Nếu T đã gồm tất cả các đỉnh của G thì T là cây bao trùm cần tìm. Kết thúc. 
3. Nếu G còn có các đỉnh không thuộc T, vì G liên thông nên có các cạnh nối một đỉnh trong T với 
một đỉnh ngồi T, chọn một cạnh có trọng số nhỏ nhất trong số đó cho vào T. 
4. Quay lại 2. 
I. Các mục tiêu cần đạt được: 
 - Dữ liệu được nhập từ bàn phím là một ma trận trọng số. 
 - Thiết kế giải thuật Prim và xuất ra màn hình cây khung có trọng lượng nhỏ nhất. 
II. Hướng giải quyết: 
 - Viết chương trình nhập vào 1 ma trận trọng số. 
 - Sử dụng giải thuật Prim để tìm được cây khung có trọng lượng nhỏ nhất. 
Đề Tài:Tìm cây khung có trọng lượng nhỏ nhất bằng giải thuật Prim GVHD: Nguyễn Thành Quí 
SVTH: Huỳnh Hải Đăng Trang 5/17 
 - Xuất ra màn hình đồ họa các bước trong trong giải thuật Prim. 
III. Kế hoạch thực hiện 
Tuần 1 Tuần 2 Tuần 3 Tuần 4 
- Phân tích yêu 
cầu 
- Tìm kiếm tài 
liệu 
- Giải bài tốn 
mẫu trên giấy 
- Phân tích giải 
bài tốn bằng 
ngôn ngử giả 
- Cài đặt các cấu trúc 
dữ liệu cần thiết và 
kiểm tra tính đúng 
đắn của chúng 
- Viết chương trình 
chạy trên chế độ text. 
- Kiểm tra tính đúng 
đắn của chương trình 
- Cải tiến chương 
trình chạy trên chế 
độ đồ họa 
- Kiểm tra vét cạn 
tất cả các trường 
hợp. 
- Cải tiến để chương 
trình có thể chịu 
được các sai xót ở 
khâu nhập liệu. 
- Viết báo cáo 
Đề Tài:Tìm cây khung có trọng lượng nhỏ nhất bằng giải thuật Prim GVHD: Nguyễn Thành Quí 
SVTH: Huỳnh Hải Đăng Trang 6/17 
LÝ THUYẾT 
     
I. Các khái niệm chính. 
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. 
Đồ thị được gọi là liên thông nếu với mõi cặp cạnh i,j bất ky luôn tìm được đường đi 
nối i với j. 
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ác cạnh trong đồ thị G có thứ tự thì G gọi là đồ thị có hướng (directed graph). 
Nếu các cạnh trong đồ thị G không có thứ tự thì đồ thị G là đồ thị vô hướng (undirected 
graph). 
Đường đi trong đồ thị là một dãy các đỉnh: 
sao cho, mỗi đỉnh trong dãy (không kể đỉnh đầu tiên) kề với đỉnh trước nó bằng một cạnh nào đó, 
nghĩa là:    i = 2, 3,  , k-1, k : (xi-1, xi)  E. 
 Ta nói rằng đường đi này đi từ đỉnh đầu x1 đến đỉnh cuối xk. Số cạnh của đường đi được 
gọi là độ dài của đường đi đó. 
Đề Tài:Tìm cây khung có trọng lượng nhỏ nhất bằng giải thuật Prim GVHD: Nguyễn Thành Quí 
SVTH: Huỳnh Hải Đăng Trang 7/17 
 Đường đi đơn là đường đi mà các đỉnh trên nó khác nhau từng đôi. 
Đồ thị vô hướng G=(V,E) được gọi là liên thông nếu với mỗi cặp đỉnh i, j bất kỳ thì luôn 
tìm được đường đi nối i và j. Đường đi nối i và j cũng là đường đi nối j và i. 
 Cây là đồ thị vô hướng, liên thông, không có chu trình 
Cây khung: Cho G là một đơn đồ thị. Một cây được gọi là cây khung của G nếu nó là một 
đồ thị con của G và chứa tất cả các đỉnh của G. 
 Cây khung nhỏ nhất: Nói chung, ta có thể định nghĩa cây khung nhỏ nhất cho một đồ thị 
G như sau: Nếu mỗi cạnh eij = (vi, vj) có một trọng số cij, thì cây khung nhỏ nhất là một tập hợp 
các cạnh ký hiệu là Espan, sao cho: 
C = sum( cij |  eij  Espan ) 
là nhỏ nhất. 
II. Các cách biểu diễn đồ thị : 
Có khá nhiều cách biểu diễn đồ thị như biểu diễn bằng ma trận đỉnh-cung, ma trận đỉnh-
cạnh, ma trận trọng số, danh sách liên kết, .Ở đây chúng ta chỉ nghiên cứu cách biểu diễn đồ thị 
bằng ma trận trọng số như sau : 
Với đồ thị G=(V,E) , người ta thường gán cho mỗi cung hay cạnh (i,j) một giá trị cij gọi là trọng 
số của cung hay cạnh đó. Ma trận A biểu diễn đồ thị G=(V,E) có dạng : A=[aij] với i,j   V 
 Trong đó : aij=0 nếu cạnh/cung (i,j) không thuộc E, aij=wij nếu cạnh/cung (i,j) thuộc E 
Ví dụ : 
 Xét đồ thị vô hướng có trọng số : 
Ma trận trọng số biểu diễn đồ thị là : 
Cây 
1 
2 
3 4 
5 3 
8 
2 
7 
5 
11
9 
Đề Tài:Tìm cây khung có trọng lượng nhỏ nhất bằng giải thuật Prim GVHD: Nguyễn Thành Quí 
SVTH: Huỳnh Hải Đăng Trang 8/17 
 1 2 3 4 5 
1 0 3 8 0 0 
2 3 0 2 5 7 
 3 8 2 0 9 0 
4 0 5 9 0 11 
5 0 7 0 11 0 
III. Duyệt các đỉnh của đồ thị : 
Xét đồ thị G=(V,E) . Gọi i là một đỉnh nào đó của G. Ký hiệu L là cấu trúc dữ liệu kiểu danh sách 
lưu trữ các đỉnh của G. Thuật tốn duyệt các đỉnh của G được trình bày một cách tổng quát như 
sau : 
 Nạp đỉnh i vào danh sách L 
 Lấy đỉnh x ra khỏi đầu danh sách 
 Nếu x chưa được duyệt thì duyệt đỉnh x 
 Nạp các đỉnh kề với x chưa được duyệt vào danh sách L 
 Nếu L khác rỗng thì quay lên bước 2 
 Dừng 
Duyệt đồ thị theo chiều sâu DFS (Depth-First Search) 
 Nếu trong thuật tốn duyệt các đỉnh của đồ thị, danh sách L được tổ chức theo kiểu ngăn 
xếp (vào trước ra sau) thì ta có phương pháp duyệt theo chiều sâu. Trong phương pháp này mỗi 
lần duyệt một đỉnh ta duyệt đến tận cùng mỗi nhánh rồi mới chuyển sang duyệt nhánh khác. 
Duyệt đồ thị theo chiều rộng BFS (Breadth-First Search) 
 Nếu trong thuật tốn duyệt các đỉnh của đồ thị, danh sách L được tổ chức theo kiểu hàng 
đợi (vào trước ra trước) thì ta có phương pháp duyệt theo chiều rộng. Trong phương pháp này 
việc duyệt có tính chất lan rộng. Một đỉnh được duyệt xong ngay sau khi đã xét hết tất cả các đỉnh 
kề với nó. 
Kiểm tra tính liên thông của đồ thị : 
 Hai giải thuật duyệt theo chiều sâu DFS và duyệt theo chiều rộng BFS thường được sử 
dụng để kiểm tra tính liên thông của đồ thị. 
 Khi duyệt các đỉnh của đồ thị tập hợp các đỉnh đã được đánh số tạo thành một bộ phận liên 
thông của đồ thị. Nếu tất cả các đỉnh của đồ thị đều được đánh số thì kết luận đồ thị liên thông, 
ngược lại thì bắt đầu từ một đỉnh chưa được duyệt, áp dụng lại giải thuật trên tập hợp các đỉnh 
chưa được duyệt để tìm bộ phận liên thông kế tiếp. 
IV .Giải thuật Prim : 
 Mô tả 
 Gọi T là cây bao trùm sẽ xây dựng 
 1. Chọn một đỉnh s bất kỳ của G cho vào cây T. Khi đó T là một cây chỉ có một đỉnh và 
chưa có cạnh nào. 
 2. Nếu T đã gồm tất cả các đỉnh của G thì T là cây bao trùm cần tìm. Kết thúc. 
Đề Tài:Tìm cây khung có trọng lượng nhỏ nhất bằng giải thuật Prim GVHD: Nguyễn Thành Quí 
SVTH: Huỳnh Hải Đăng Trang 9/17 
 3. Nếu G còn có các đỉnh không thuộc T, vì G liên thông nên có các cạnh nối một đỉnh 
trong T với một đỉnh ngồi T, chọn một cạnh có trọng số nhỏ nhất trong số đó cho vào T. 
 4. Quay lại 2. 
 Kết quả vận dụng lý thuyết vào đề tài: 
 Nhập vào đồ thị vô hướng sau: 
 Kiểm tra tính liên thông của đồ thị : đồ thị liên thong 
 Bước khởi đầu: U={1},T= 
 Bước kế tiếp ta chọn cạnh (1,3) = 1 là cạnh ngắn nhất thỏa điều kiện của giải thuật Prim. 
Ta có U={1,3},T={(1,3)}. 
 Kế tiếp thì cạnh (3,6) = 4 là cạnh ngắn nhất thỏa điều kiện của giải thuật Prim. Ta có 
U={1,3,6},T={(1,3)(3,6)}. 
 Kế tiếp thì cạnh (6,4) = 2 là cạnh ngắn nhất thỏa điều kiện của giải thuật Prim. Ta có 
U={1,3,6,4},T={(1,3)(3,6)(6,4)}. 
 Tiếp tục, cạnh (3,2) = 5 là cạnh ngắn nhất thỏa điều kiện của giải thuật Prim. Ta có 
U={1,3,6,4,2},T={(1,3),(3,6), (6,4),(3,2)}. 
 Cuối cùng là cạnh (2,5)=3 là cạnh ngắn nhất thỏa điều kiện của giải thuật Prim. Ta có 
U={1,3,6,4,2,5},T={(1,3),(3,6), (6,4),(3,2),(2,5),}. Giải thuật dừng và ta có cây bao trùm như hình 
bên dưới. 
Đề Tài:Tìm cây khung có trọng lượng nhỏ nhất bằng giải thuật Prim GVHD: Nguyễn Thành Quí 
SVTH: Huỳnh Hải Đăng Trang 10/17 
Ứng Dụng 
I. Lưu đồ giải thuật Prim: 
U=V 
U={1},T= 
End 
begin 
G=(V,E) là đồ 
thị liên thông 
Sai 
Sai 
Đúng 
For i  U 
For j  G-U 
min =  
min>(i,j) and 
(i,j)≠ 0 
Sai 
min=(i,j) 
u=i, v=j 
U=U+v 
T=T+(u,v) 
Đúng 
Đúng 
Kết thúc for 
Kết thúc for 
Đề Tài:Tìm cây khung có trọng lượng nhỏ nhất bằng giải thuật Prim GVHD: Nguyễn Thành Quí 
SVTH: Huỳnh Hải Đăng Trang 11/17 
 II.Lưu đồ duyệt cây theo chiều sâu tại đỉnh i 
III. Lưu đồ duyệt cây theo chiều rộng tại đỉnh i 
begin 
Duyệt đỉnh i 
Đ 
S 
Đánh dấu đã duyệt tất cả 
j là kề của i 
Đ 
begin 
Duyệt đỉnh i 
Xét đỉnh lần lượt các j 
kề với i và chưa duyệt 
Duyệt đỉnh j 
end 
Đ 
S 
Xét đỉnh j kề với 
i và đã duyệt 
Duyệt đỉnh j 
end 
Đề Tài:Tìm cây khung có trọng lượng nhỏ nhất bằng giải thuật Prim GVHD: Nguyễn Thành Quí 
SVTH: Huỳnh Hải Đăng Trang 12/17 
IV. Giới thiệu chương trình 
Chương trình gồm các chức năng sau: 
1. Nhập đồ thị 
2. Vẽ đồ thị 
3. Tìm cây bao trùm theo giải thuật Prim 
4. Thốt và lưu trạng dữ liệu vào file graph.txt 
5. Duyệt đồ thị theo chiều rộng 
6. Duyệt đồ thị theo chiều sâu 
 Nhập đồ thị 
 Người dùng sẽ nhập số đỉnh của đồ thị và nhập trọng số của các cạnh 
Đề Tài:Tìm cây khung có trọng lượng nhỏ nhất bằng giải thuật Prim GVHD: Nguyễn Thành Quí 
SVTH: Huỳnh Hải Đăng Trang 13/17 
 Vẽ đồ thị: 
Đề Tài:Tìm cây khung có trọng lượng nhỏ nhất bằng giải thuật Prim GVHD: Nguyễn Thành Quí 
SVTH: Huỳnh Hải Đăng Trang 14/17 
 Giải thuật Prim 
 Bắt đầu từ đỉnh 1, chương trình sẽ thực hiện chọn lần lượt các cạnh có trọng số nhỏ nhất 
khi người dung nhấn bất kỳ phím nào. Chương trình sẽ dừng vào thông báo trọng lượng của cây bao trùm 
tối thiểu khi tất cả các đỉnh đã được chọn. 
 Duyệt theo chiều rộng 
 Người dùng chọn một đỉnh và chương trình sẽ hiện thị thứ tự duyệt theo chiều rộng 
 Dyệt theo chiều sâu 
Đề Tài:Tìm cây khung có trọng lượng nhỏ nhất bằng giải thuật Prim GVHD: Nguyễn Thành Quí 
SVTH: Huỳnh Hải Đăng Trang 15/17 
 Người dùng chọn một đỉnh và chương trình sẽ hiện thị thứ tự duyệt theo chiều sâu 
Đề Tài:Tìm cây khung có trọng lượng nhỏ nhất bằng giải thuật Prim GVHD: Nguyễn Thành Quí 
SVTH: Huỳnh Hải Đăng Trang 16/17 
KẾT LUẬN- ĐÁNH GIÁ 
I. Kết quả đạt được 
 Nhìn chung chương trình đã đáp ứng được về cơ bản những mục tiêu cần đạt được của đề 
tài đặt ra. Ngồi ra qua quá trình thực hiện chương trình, bản thân cũng rút ra được một số kinh 
nghiệm trong quá trình xây dựng và thiết kế một chương trình. Giúp nâng cao khả năng tư duy, 
khả năng vận dụng những kiến thức lý thuyết đã được học vào việc giải quyết một bài tốn , một 
vấn đề thực tế. 
II. Hạn chế của chương trình 
 Chương trình chạy trong DOS đồ họa không được đẹp và có thể không chạy được trên các 
hệ điều hành mới. 
 Không gian biểu diễn đồ thị là 2D nên sẽ rất khó quan sát khi số lượng đỉnh của đồ thị tăng 
quá 15.( Vì lý do này nên chương trình giới hạn số đỉnh của người dùng nhập là 20, mặc dù 
chương trình vẫn chạy đúng với n đỉnh ). 
III. Hướng phát triển. 
 Viết chương trình bằng VC++ chạy được trên các hệ điều hành mới, và sử dụng chuẩn đồ họa 
OpenGL để biểu diễn đồ thị trong không gian 3D, làm cho người dùng quan sát dễ dàng hơn khi số lượng 
của đồ thị lớn. 
Đề Tài:Tìm cây khung có trọng lượng nhỏ nhất bằng giải thuật Prim GVHD: Nguyễn Thành Quí 
SVTH: Huỳnh Hải Đăng Trang 17/17 
PHỤ LỤC 
Hướng dẫn chạy chương trình: 
 1. Khởi động tập tin main.exe 
 2. Nhập dữ liệu cho đồ thị bấm phím số 1 
 3. Vẽ đồ thị trên màn hình bấm phím số 2 
 4. Chạy giải thuật Prim bấm phím số 3 
 5. Thốt và lưu dữ liệu hiện hành vào tệp graph.txt bấm phím số 4 
 6. Duyệt đồ thị theo chiều sâu bấm phím số 5 
 7. Duyệt đồ thị theo chiều rộng bấm phím số 6 
Các tài liệu tham khảo 
 [1] Bài giảng: TỐN RỜI RẠC 2 (Bộ Môn Hệ Thống Thông Tin – Tốn Ứng Dụng, Khoa 
Công Nghệ Thông Tin, Trường Đại Học Cần Thơ) 
 [2] Side bài giảng về đồ thị của Thạc sĩ Nguyễn Văn Linh – Trường Đại Học Cần Thơ 
 [3] Giáo trình Lập Trình Hướng Đối Tượng C++ của Thạc sĩ Trương Văn Trí Công – 
Trường Đại Học Cần Thơ. 
 [4] Giáo Trình Lập Trình C++ và Lập Trình Hướng Đối Tượng của GS Phạm Văn Ất – 
Nhà xuất bản khoa học và kỹ thuật Hà Nội. 
 [5]
%BA%A5t 
            Các file đính kèm theo tài liệu này:
 tim_cay_khung_co_trong_luong_nho_nhat_bang_giai_thuat_prim_1704.pdf tim_cay_khung_co_trong_luong_nho_nhat_bang_giai_thuat_prim_1704.pdf