Bộ Giáo Dục và Đào Tạo CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM 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
Trang 1Bộ Giáo Dục và Đào Tạo CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM 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
1 Tên học phần: Cấu trúc dữ liệu
Tên tiếng Anh: Data structures
2 Mã học phần: 14344
3 Số đơn vị học trình: 5
4 Trình độ (cho sinh viên năm thứ 2)
5 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
6 Giảng viên phụ trách: ThS Nguyễn Thanh Phước
7 Bộ môn: Công Nghệ Phần Mềm Khoa: Công Nghệ Thông Tin
8 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 mảng, cấu trúc xâu liên kết đơn, cấu trúc bảng băm
Kỹ thuật lập trình đệ quy
Các thuật toán tìm kiếm, sắp xếp trên mảng
Xây dựng collection: Set( ArraySet, TreeSet, LinkedSet, HashSet), List (OrderList, IndexedList)
Cấu trúc cây: cây nhị phân, cây biểu thức
9 Mô tả vắn tắt nội dung học phần:
10 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)
11 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: (5LT – 5 TH)
Trang 2+ Lý thuyết
Mảng 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
+ Thực hành
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: (15LT – 20TH)
+ Lý thuyết
Xây dựng Collection Set (ArraySet, LinkedSet)
Xây dựng Collection Stack, Queue dùng cấu trúc mảng và xâu liên kết đơn
Xây dựng Collection List
Cấu trúc xâu liên kết đơn
+ Thực hành
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, Tính giá trị của biểu thức, Mã hóa dữ liệu
Phần 3: (9LT – 15TH)
+ Lý thuyết
Tìm kiếm tuần tự và tìm kiếm nhị phân
Selection Sort
Insertion Sort
Bubble Sort
Kỹ thuật lập trình đệ quy
Quick Sort
Merge Sort
+ Thực hành
Cài đặt các thuật toán trong phần lý thuyết
Cài đặt các thuật toán trên List
Phần 4: (6LT – 8TH)
+ Lý thuyết
Bảng băm
Một số phương pháp giải quyết collision
+ Thực hành
Trang 3 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)
+ Thực hành
Cài đặt cây nhị phân
Cài đặt Arithmetic Tree
Phần 6: Ôn tập : (4LT)
Ôn Tập
12 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)
13 Nhiệm vụ của sinh viên:
- Dự lớp
- Làm bài tập
14 Tiêu chuẩn đánh giá sinh viên:
- Thi giữa kỳ: 30%
15 Thang điểm:
- Thi cuối kỳ: 70%
Ngày tháng năm