Bộ Giáo Dục và Đào Tạo CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT
TRƯỜNG ĐẠI HỌC NÔNG LÂM TP.HCM Độc Lập – Tự Do – Hạnh Phúc
CHƯƠNG TRÌNH TRÌNH ĐỘ (ĐẠI HỌC, CAO ĐẲNG)
NGÀNH ĐÀO TẠO:
ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN
- Tên học phần: Cấu trúc dữ liệu 1
Tên tiếng Anh: Data structures 1
- Mã học phần: 14344
- Số đơn vị học trình: 5
- Trình độ (cho sinh viên năm thứ 2)
- Phân bổ thời gian:
- Lên lớp: 45 tiết
- Thực tập phòng thí nghiệm, thực hành: 60 tiết
- Giảng viên phụ trách: ThS. Nguyễn Thanh Phước
- Bộ môn: Công Nghệ Phần Mềm Khoa: Công Nghệ Thông Tin
- Mục tiêu của học phần:
Sau khi hoàn tất học phần, sinh viên có khả năng :
_ Cấu trúc tuần tự : Array, List, Stack, Queue, Hashing
_ Độ phức tạp của thuật toán
_ Kỹ thuật lập trình đệ quy
_ Các thuật toán tìm kiếm, sắp xếp.
_ Cấu trúc phân cấp: Tree, Heap, Priority Queue
- Mô tả vắn tắt nội dung học phần:
- Các học phần tiên quyết hay có liên quan: Lập trình A1 ( How to design Class Hasdasierachies)
- Nội dung chi tiết phân bố theo chương trình và số tiết tương ứng của học phần:
Phần 1: (6LT – 8 TH)
+ Lý thuyết (6 tiết)
_ Array và các cú pháp foreach, enum trong JDK 1.5
_ Khái niệm Generic, sử dụng và xây dựng các lớp hỗ trợ Generic
_ Độ phức tạp của thuật toán
+ Thực hành (8 tiết)
_ Các đặt một số bài toán liên quan đến Array
_ Triển khai lớp hỗ trợ Generic
Phần2: (9LT – 12TH)
+ Lý thuyết (9 tiết)
_ Khái niệm cấu trúc tuần tự : List – Stack - Queue
_ Cấu trúc Immutable List
_ Cấu trúc xâu liên kết
+ Thực hành
_ Cài đặt Immutable List
_ Cài đặt xâu liên kết theo cách thiết kế của Java Collection Framework (AbstractionList)
_ Cài đặt Stack, Queue
Phần 3: (9LT – 12TH)
+ Lý thuyết (9 tiết)
_ Tìm kiếm tuần tự và tìm kiếm nhị phân
_ Selection Sort
_ Insertion Sort
_ Bubble Sort
_ Đệ quy
_ Quick Sort
_ Merge Sort
+ Thực hành (12 tiết)
_ Cài đặt thuật toán tìm kiếm trên List ( xâu liên kết )
_ Cài đặt thuật toán Selection, Insertion sort trên List ( xâu liên kết )
Phần 4: (6LT – 8TH)
+ Lý thuyết (6 tiết)
_ Bảng băm
_ Một số phương pháp giải quyết collision
+ Thực hành (8 tiết)
_ Cài đặt bảng băm dùng mãng
Phần 5 : (6LT – 12TH)
+ Lý thuyết
_ Cây - Cây nhị phân – Cây nhị phân tìm kiếm
_ Cây biểu thức (Arithmetic Tree)
_ Cây cân bằng – Cây AVL, cây Red – Black Tree.
+ Thực hành
_ Cài đặt cây nhị phân
_ Cài đặt Arithmetic Tree
Phần 6: (6LT – 8 TH)
+ Lý thuyết
_ Heap và Priority Queue
+ Thực hành
_ Cài đặt Heap và Priority Queue
Phần 5: Ôn tập : (3LT)
_ Ôn Tập
- Tài liệu học tập, trang thiết bị phụ vụ thực hành thực tập, trợ huấn cụ
Tài liệu tham khảo
1. Algorithms in Java: Parts 1-4, Third Edition, By Robert Sedgewick
2. Data Structures and Algorithms with Object-Oriented Design Patterns in Java
3. Java 1.5 Tiger A Developers Notebook (OReilly)
- Nhiệm vụ của sinh viên:
- Dự lớp
- Bài tập
- Dụng cụ học tập
- Khác
- Tiêu chuẩn đánh giá sinh viên:
- Dự lớp
- Thảo luận
- Bản thu hoạch
- Thuyết trình
- Thi cuối học phần
- Khác
- Thang điểm:
Ngày tháng năm
Duyệt của Ý kiến Người biên soạn
Trưởng Khoa/BM Trưởng Bộ Môn
Số lần xem trang: 3627
Điều chỉnh lần cuối: