1
CƠ SƠ LẬP TRINH
NÂNG CAO
Biên soạn: Ths.Tôn Quang Toại
TonQuangToai@yahoo.com
TPHCM, NĂM 2013
TRƯỜNG ĐẠI HỌC NGOẠI NGỮ - TIN HỌC TP.HCM
KHOA CÔNG NGHỆ THÔNG TIN
2
Mục tiêu môn học
§Mục tiêu cần đạt được
- Nắm vững một số phương pha<p Thiê<t kê< thuật toán
đê giai bai toa<n tin hoAc
- Nă<m vưCng môAt sô< phương pha<p Tô<i ưu ho<a chương
trình
3
Nội dung môn học
§Chương 1: Độ phức tạp của thuật toán
§Chương 2: Ôn tập kỹ thuật xử lý File – Mảng – Xâu ký tự
§Chương 3: Lập trình Đệ quy
§Chương 4: Phương pháp Quay lui
§Chương 5: Phương pháp Nhánh cận
§Chương 6: Phương pháp Chia để trị
§Chương 7: Phương pháp Tham lam
§Chương 8: Phương pháp Quy hoạch động
§Chương 9: Phương pháp Hình học
§Chương 10: Tô<i ưu ho<a chương trình
4
Tài liệu tham khảo
§Books
1. Vũ Đình Hòa, Đỗ Trung Kiên, “Thuật toán và độ phức tạp
của thuật toán”, NXB ĐHSP, 2007
2. Steven S. Skiena, “The Algorithm Design Manual”, Springer
, 2008
3. Art Lew, Holger Mauch, “Dynamic Programming – A
Computational Tool”, Springer, 2007
4. Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest,
Clifford Stein, “Introduction to Algorithms”, 2009
5. Jon Bentley, “Writing Efficient Programs, Prentice-Hall,
1982
6. Jon Bentley, “Programming Pearls”, Addison Wesley, 2000
5
ĐỘ PHỨC TẠP
CỦA THUẬT TOÁN
Chương 1