BÀI TẬP PHẦN LÝ THUYẾT ĐỒ THỊ Bài 1: Thực câu sau đồ thị G Hình Hình 1) Tìm đường ngắn từ H F Bước 0: xuất phát H Bước 1: gán nhãn B: 2(H,B), G: 14(H,G) chọn B Bước 2: gán nhãn A: 3(H,B,A), C: 4(H,B,C), D: 11(H,B,D), G: 6(H,B,G) chọn A (Lưu ý: đa số bạn sai chỗ này, với đỉnh gán nhãn bước chưa chọn ko cập nhật phải copy xuống) Bước 3: gán nhãn: C: 4(H,B,C), D: 11(H,B,D), G: 6(H,B,G) chọn C (gán nhãn: từ A ko thể gán nhãn cho đỉnh nữa, không cập nhật đỉnh nào; nhãn cũ: C: 4(H,B,C), D: 11(H,B,D), G: 6(H,B,G) chọn C) Bước 4: gán nhãn D: 5(H,B,C,D), E: 7(H,B,C,E), (nhãn cũ) G: 6(H,B,G) chọn D Bước 5: gán nhãn E: 6(H,B,C,D,E), F: 8(H,B,C,D,F), (nhãn cũ) G: 6(H,B,G) chọn E Bước 6: gán nhãn F: 7(H,B,C,D,E,F), (nhãn cũ) G: 6(H,B,G) chọn G (Tuy tìm thấy điểm đích cần đến nhãn chưa duyệt hết,vẫn phải tiếp tục duyệt nhãn có giá trị nhỏ nhất) Bước 7: gán nhãn: (nhãn cũ) F: 7(H,B,C,D,E,F) Giải thuật kết thúc Kết luận: đường ngắn từ H > F có độ dài 7, qua đỉnh H,B,C,D,E,F 2) Tìm khung nhỏ G thuật toán Kruskal? Bước 1: xếp cạnh theo thứ tự trọng số tăng dần (A,B) = 1, (C,D) = 1, (D,E) = 1, (E,F) = 1, (D,G) = (B,C) = 2, (B, H) = (C,E) = 3, (D,F) = (A,C) = 4, (B,G) = (F,G) = (B,D) = (G,H) = 14 Bước 2: lấy cạnh theo thứ tự xếp ghép vào đồ thị (ban đầu rỗng) cho khơng xuất chu trình Ta cạnh sau: (A,B) = 1, (C,D) = 1, (D,E) = 1, (E,F) = 1, (D,G) = (B,C) = 2, (B, H) = Tổng trọng số khung nhỏ nhất: R G B R R Y B G Cây khung nhỏ Đồ thị sau tô màu 3) Tô màu đồ thị 4) Tìm tổng bậc đỉnh, số đỉnh bậc lẻ, số đỉnh bậc chẵn (tự thực hiện) Bài 2: Thực lại câu với đồ thị sau (đường A > I) (đường A > J) (đường A > M) Yêu cầu: dựa vào giải trên, làm lại tập chương Bài 3: cặp đồ thị sau có đẳng cấu khơng? (Anser: có, đỉnh tương ứng theo màu tơ) (Anser: có) Tự trả lời câu với tập đồ thị sau: (Anser: có)