Menu
CoddyTech

Cách hoạt động?

Bài học 3 trên 9 trong khóa học Tìm kiếm theo chiều sâu, thuật toán đồ thị của Coddy.

DFS lưu một dấu đánh dấu đã thăm cho mỗi đỉnh và một ngăn xếp chứa các đỉnh cần xử lý.

Quy trình từng bước:

  1. Đẩy đỉnh bắt đầu vào ngăn xếp.
  2. Lấy một đỉnh ra khỏi ngăn xếp. Nếu đỉnh đó đã được thăm, hãy bỏ qua. Nếu chưa, đánh dấu đỉnh đó là đã thăm và ghi lại thứ tự thăm.
  3. Đẩy các đỉnh kề chưa được thăm vào ngăn xếp. Để thăm chúng theo thứ tự tăng dần, hãy đẩy chúng từ lớn nhất đến nhỏ nhất để đỉnh nhỏ nhất được lấy ra trước.
  4. Lặp lại cho đến khi ngăn xếp trống.

Ví dụ trên các đỉnh 0..3 với các cạnh [0,1, 0,2, 1,3, 2,3], bắt đầu từ 0:

  • Thăm 0, rồi đến đỉnh kề nhỏ nhất của nó là 1, tiếp theo là đỉnh kề 3 của 1, rồi đến đỉnh kề 2 của 3.
  • Thứ tự thăm: [0, 1, 3, 2].

Chỉ các đỉnh có thể đi đến từ đỉnh bắt đầu mới được thăm.

Tự làm thử

Bài học này không có thử thách code.

quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Tìm kiếm theo chiều sâu, thuật toán đồ thị

Tự luyện tập: Trình biên dịch C online