Các bài toán trong th ực tế không dễ giải bằng cách hiểu thông thường và để giảm độ phức tạp, trong nhiều trường h ợp có thể mô hình hóa bài toán.. T ừ việc mô hình hóa, trong thực[r]
(1)Lecturer: Dr Ngo Huu Phuc Tel: 0438 326 077 Mob: 098 5696 580 Email: ngohuuphuc76@gmail.com
Cấu trúc liệu giải thuật
(2)Tài liệu tham khảo
Mastering Algorithms with C, Kyle Loudon, 1999
Introduction to Algorithms, Thomas H Cormen, Charles E Leiserson, Ronald L Rivest and Clifford Stein, The MIT Press © 2001
Data Structures, Algorithms, and Object-Oriented Programming NXB McGraw Hill; Tác giả Gregory Heilleman -1996
(3)Bài Giới thiệu
Nội dung:
1.0 Đôi nét khái niệm
1.1 Giải thuật
1.2 Dữ liệu cấu trúc liệu 1.3 Biểu diễn giải thuật
1.4 Độ phức tạp giải thuật
Tham khảo:
(4)1.0 Đôi nét khái niệm
Để giải toán, câu hỏi “phải làm gì?”, sau
đó trả lời câu hỏi “làm nào?” → cách tiếp cận đến giải thuật cấu trúc liệu
Các tốn thực tế khơng dễ giải cách hiểu thông thường để giảm độ phức tạp, nhiều trường hợp mơ hình hóa tốn
(5)1.0.1 Một số ví dụ (1)
Ví dụ 1: Tơ màu đồ giới
Yêu cầu:
Ta cần phải tô màu cho nước đồ giới
Trong nước tô màu
Hai nước láng giềng (cùng biên giới) phải tơ
hai màu khác
(6)1.0.2 Một số ví dụ (2)
Hướng giải mơ hình hóa:
Ta xem nước đồ giới đỉnh đồ thị Hai nước láng giềng hai đỉnh ứng với nối với
nhau cạnh
Bài tốn lúc trở thành tốn tơ màu cho đồ thị sau: Mỗi đỉnh phải tơ màu
Hai đỉnh có cạnh nối phải tơ hai màu khác
(7)1.0.3 Một số ví dụ (3)
Ví dụ 2: Đèn giao thơng Cho ngã năm hình
C E đường chiều theo chiều mũi tên Các đường khác hai chiều
Hãy thiết kế bảng đèn hiệu điều khiển giao thông ngã năm cách hợp lý: cho:
Phân chia lối ngã năm thành nhóm
(8)1.0.4 Hướng giải (VD2)
Ta xem đầu vào (input) toán tất lối ngã năm
Đầu (output) tốn nhóm lối đi đồng thời mà không xảy tai nạn giao thông
(9)1.0.4 Hướng giải (VD2) (t)
Trước hết ta nhận thấy ngã năm có 13 lối đi: AB, AC, AD, BA, BC, BD, DA, DB, DC, EA, EB, EC, ED
Thể lối đồng thời
Ví dụ cặp AB EC đồng thời, AD EB khơng, hướng giao thông cắt
Sử dụng sơ đồ trực quan:
Tên 13 lối viết lên mặt phẳng,
(10)