Bài giảng Cấu trúc dữ liệu và giải thuật: Giới thiệu - Đậu Ngọc Hà Dương trình bày các thông tin về môn học, quy định môn học, tài liệu tham khảo và nội dung môn học để các bạn sinh viên nắm được các thông tin hữu ích. Mời các bạn cùng tham khảo!
Cấu trúc dữ liệu và giải thuật Giới thiệu Giảng viên: Đậu Ngọc Hà Dương Nội dung Thông tin môn học Quy định môn học Tài liệu tham khảo Nội dung môn học Cấu trúc dữ liệu và giải thuật HCMUS Thông tin môn học – Giáo viên Cấu trúc dữ liệu và giải thuật HCMUS Trang web môn học http://courses.fit.hcmus.edu.vn/ Sử dụng cho các việc: Đặt câu hỏi Giải đáp thắc mắc Nhận thông báo Nhận/nộp tập Cấu trúc dữ liệu và giải thuật HCMUS Quy định điểm số Điểm lý thuyết: 6 điểm Điểm thực hành: 4 điểm Hình thức thi: Theo quy định Giáo viên HDTH Điểm cộng: 2 điểm Thi viết Hình thức cộng: tham gia trả lời, lên bảng giải bài, game win Bất kỳ trường hợp gian lận nào bị phát hiện trong quá trình học, thi, bài tập,… sẽ bị phạt theo qui định sau: Lần trừ 30% tổng Cấu trúc d ữ li1: ệu và gi ải thuậtrên t HCMUS số điểm môn học Thông tin môn học – Giờ học Lý thuyết KHƠNG bắt buộc phải có mặt. Nếu đi học, phải đi học đúng giờ và nghiêm túc Có thể có các bài kiểm tra nhỏ với nội dung của phần học có liên quan Có thể có điểm trừ cho việc chuẩn bị bài, làm bài khơng tốt Cấu trúc dữ liệu và giải thuật HCMUS Thơng tin mơn học – Giờ học thực hành Ngơn ngữ lập trình: C/C++ Cơng cụ lập trình: Visual C++ 6 hoặc Visual Studio 2005, 2008, 2010 (chế độ console) Chương trình viết phải ngăn nắp, thẳng hàng, ghi chú đầy đủ. Đặt tên biến và tên hàm phải gợi nhớ, có qui ước xác định Cấu trúc dữ liệu và giải thuật HCMUS Tài liệu tham khảo Adam Drozdek (2001), Data structures and Algorithms in C++ (Second Edition) Dương Anh Đức – Trần Hạnh Nhi (2003), Nhập mơn Cấu trúc dữ liệu và giải thuật, NXB ĐHQG TP.HCM Đinh Mạnh Tường (2008), Cấu trúc dữ liệu và thuật tốn, NXB ĐHQG HN Đỗ Xuân Lôi (2007), Cấu trúc dữ liệu và giải thuật, NXB ĐHQG HN Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein (2001), Introduction to Algorithms (Second Edition) Cấu trúc dữ liệu và giải thuật HCMUS Nội dung môn học Giới thiệu Các khái niệm cơ bản Các cấu trúc dữ liệu cơ bản Cấu trúc cây Bcây và ứng dụng Nén dữ liệu Các thuật tốn sắp xếp Các chiến lược tìm kiếm Cấu trúc dữ liệu và giải thuật HCMUS Đối sánh chuỗi Nội dung mơn học 10 Cấu trúc dữ liệu và giải thuật HCMUS Mục đích mơn học 15 Học mơn này để làm gì? Cấu trúc dữ liệu và giải thuật HCMUS Phương pháp học 16 Giải bài tập Làm bài thực hành Thảo luận nhóm Tham gia trị chơi đối kháng Seminar … Cấu trúc dữ liệu và giải thuật HCMUS Ngơn ngữ lập trình 17 Cấu trúc dữ liệu và giải thuật HCMUS Ngơn ngữ lập trình 18 George Boole Cấu trúc dữ liệu và giải thuật HCMUS Ngơn ngữ lập trình 19 Alan Turing Cấu trúc dữ liệu và giải thuật HCMUS Ngơn ngữ lập trình 20 Von Neumann Cấu trúc dữ liệu và giải thuật HCMUS Thế thuật toán? 21 An algorithm is a sequence of steps required to accomplish a task (AlKhwārizmī) Thuật tốn là tập hợp hữu hạn các lệnh chính xác để thực hiện tính tốn hoặc để giải một bài tốn (Rosen) AlKhwārizmī Cấu trúc dữ liệu và giải thuật HCMUS 22 Thuật tốn – Các giai đoạn thực Cấu trúc dữ liệu và giải thuật HCMUS 23 Thuật toán – Phương pháp biểu diễn Cấu trúc dữ liệu và giải thuật HCMUS Ví dụ lưu đồ 24 Bắt đầu Nhập vào số nguyên Tính tổng số Hiển thị kết Kết thúc Cấu trúc dữ liệu và giải thuật HCMUS Ví dụ bảng định 25 Luật Điều kiện Máy in không in C C C C K K K K Đèn lỗi báo sáng C C K K C C K K Máy in không nhận biết C K C K C K C K Kiểm tra cáp nguồn Kiểm tra cáp nối máy tinh – máy in Hành động Kiểm tra driver Kiểm tra/thay mực Kiểm tra khe để giấy Cấu trúc dữ liệu và giải thuật HCMUS X X X X X X X X X X X X X Thế cấu trúc liệu? 26 Cấu trúc dữ liệu là một cách tổ chức các dữ liệu thành một đơn vị hoàn chỉnh bao gồm các thành phần (phần tử) là các dữ liệu cơ bản, các mối liên kết giữa các phần tử ấy và các thao tác cơ bản trên chúng Các thao tác này thường được gọi là các phép tốn trên cấu trúc dữ liệu xác định. Các phép tốn cơ bản thường gặp là tạo lập (create), hủy (dipose), thêm (add), chèn (insert), xóa (delete), tìm kiếm (search), Tùy theo u cầu của thuật tốn, khi thiết kế chương trình người ta định nghĩa và sử dụng các cấu trúc dữ liệu khác nhau. Các cấu trúc dữ liệu cơ bản hay dùng là: mảng (array), danh sách (list), ngăn xếp (stack), Cấu trúc dữ liệu và giải thuật HCMUS hàng đợi (queue), cây(tree), Tóm tắt 27 Cấu trúc dữ liệu và giải thuật HCMUS Mở rộng 28 Programming is for programmers [C++ in Action] Cấu trúc dữ liệu và giải thuật HCMUS 29 Hỏi Đáp Cấu trúc dữ liệu và giải thuật HCMUS ... Các chiến lược tìm kiếm Cấu? ?trúc? ?dữ liệu? ?và? ?giải? ?thuật HCMUS Đối sánh chuỗi Nội dung môn học 10 Cấu? ?trúc? ?dữ liệu? ?và? ?giải? ?thuật HCMUS Nội dung môn học 11 Cấu? ?trúc? ?dữ liệu? ?và? ?giải? ?thuật HCMUS... Tham gia trị chơi đối kháng Seminar … Cấu? ?trúc? ?dữ liệu? ?và? ?giải? ?thuật HCMUS Ngơn ngữ lập trình 17 Cấu? ?trúc? ?dữ liệu? ?và? ?giải? ?thuật HCMUS Ngơn ngữ lập trình 18 George Boole Cấu? ?trúc? ?dữ liệu? ?và? ?giải? ?thuật HCMUS... Tóm tắt 27 Cấu? ?trúc? ?dữ liệu? ?và? ?giải? ?thuật HCMUS Mở rộng 28 Programming is for programmers [C++ in Action] Cấu? ?trúc? ?dữ liệu? ?và? ?giải? ?thuật HCMUS 29 Hỏi Đáp Cấu? ?trúc? ?dữ liệu? ?và? ?giải? ?thuật HCMUS