Tải bản đầy đủ (.pdf) (5 trang)

Đề cương chi tiết học phần Cấu trúc dữ liệu và giải thuật (Trường đại học Phương Đông)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (195.34 KB, 5 trang )

BỘ GIÁO DỤC ĐÀO TẠO
TRƯỜNG ĐH PHƯƠNG ĐÔNG
========================

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

Độc lập – Tự do – Hạnh phúc
---------------o0o---------------

CHƯƠNG TRÌNH ĐÀO TẠO ĐẠI HỌC
NGÀNH ĐÀO TẠO: CÔNG NGHỆ THÔNG TIN
---------------------------------------------------------------ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN
1.
2.
3.
4.

Tên học phần:
Cấu trúc dữ liệu và giải thuật
Mã số: 0221201
Số tín chỉ: 3
Trình độ: Cho sinh viên năm thứ 2
Phân bố thời gian theo giờ tín chỉ:
Lên lớp
Thực hành, thí nghiệm,
Tự học, tự
Lý thuyết
30

Bài tập


Thảo luận

thực tế, studio

nghiên cứu

15

90

5. Các điều kiện tiên quyết:
- Học phần tiên quyết: Toán rời rạc, Ngôn ngữ lập trình C++
- Học phần học trước:
- Học phần song hành:
6. Mục tiêu của học phần:
- Kiến thức: Cung cấp cho sinh viên những cấu trúc dữ liệu cơ bản, những giải
thuật thường áp dụng để giải các bài toán với mỗi loại cấu trúc đó.
- Kỹ năng: Dạy cho sinh viên phương pháp tư duy logic, cách xây dựng các vấn
đề, bài toán cũng như cách áp dụng các cấu trúc dữ liệu và giải thuật đó để lập
trình giải quyết các bài toán thực tế.
- Thái độ: Rèn cho sinh viên tính cẩn thận, có cách nhìn nhận vấn đề một cách hệ
thống, tích lũy kiến thức cần thiết, cơ bản cho ngành học.
7. Mô tả vắn tắt nội dung:
Học phần này gồm các kiến thức tổng quan về giải thuật, độ phức tạp, các nguyên
lý cơ bản thiết kế giải thuật. Các giải thuật sắp xếp và tìm kiếm. Các cấu trúc dữ
liệu cơ bản và các giải thuật trên các cấu trúc đó: Danh sách, ngăn xếp, hàng đợi;
Cấu trúc cây, cây nhị phân, cây cân bằng, B-cây; Tập hợp, bảng, tệp; Đồ thị, các
bài toán cơ bản trên đồ thị.
8. Nhiệm vụ của sinh viên:
1



- Nộp dủ học phí.
- Dự lớp đầy đủ, làm hết các bài tập, tham gia thảo luận theo nhóm và trên lớp
theo yêu cầu của giáo viên
- Thi đạt.
9. Tài liệu học tập:
- Học liệu bắt buộc:
[1]

Trần Văn Lộc
Bài giảng cấu trúc dữ liệu & giải thuật, Khoa CNTT ĐH Phương Đông, 2008
- Học liệu tham khảo:
[2] Đinh Mạnh Tường
Cấu trúc dữ liệu & thuật toán, NXB KH&KT, Hà nội, 2001
[3] Đỗ Xuân Lôi
Cấu trúc dữ liệu & giải thuật, NXB Đại học Quốc Gia Hà Nội, 2006
10.Tiêu chuẩn đánh giá sinh viên:
- Dự lớp đầy đủ
- Bài tập, thảo luận
- Điểm kiểm tra giữa kỳ:
- Điểm thi kết thúc học phần:
11.Thang điểm: 10

10%.
10%.
10%.
70%.

12. Nội dung chi tiết học phần.

12. 1 Nội dung
Chương 1. Tổng quan về giải thuật và cấu trúc dữ liệu
1.1 Giải thuật
1.1.1 Khái niệm giải thuật
1.1.2 Biểu diễn giải thuật
1.1.3 Phân tích giải thuật
1.1.4 Các nguyên lý cơ bản thiết kế giải thuật
1.2 Cấu trúc dữ liệu
1.2.1 Kiểu dữ liệu trừu tượng
1.2.2 Kiểu dữ liệu, cấu trúc dữ liệu
Chương 2. Sắp xếp và tìm kiếm
2.1 Sắp xếp
2.1.1 Đặt bài toán
2.1.2 Các phương pháp sắp xếp đơn giản
a) Phương pháp chọn trực tiếp (Selection Sort)
2


b) Phương pháp đổi chỗ trực tiếp (Interchange Sort)
c) Phương pháp nổi bọt (Bubble Sort)
d) Phương pháp chèn trực tiếp (Insertion Sort)
2.1.3 Các phương pháp sắp xếp nhanh
a) Phương pháp phân đoạn (Quick Sort)
b) Phương pháp hòa nhập (Heap Sort)
c) Phương pháp vun đống (Merge Sort)
2.2 Tìm kiếm
2.2.1 Phương pháp tìm kiếm tuần tự (Sequential Search)
2.2.2 Phương pháp tìm kiếm nhị phân (Binary Search)
Chương 3. Danh sách
2.1 Các khái niệm cơ bản

2.1.1 Danh sách
2.1.2 Các phép toán trên danh sách
2.2 Danh sách cài đặt bởi mảng
2.2.1 Cài đặt danh sách
2.2.2 Các phép toán
2.3 Danh sách cài đặt bởi con trỏ (danh sách liên kết)
2.3.1 Cài đặt danh sách
2.3.2 Các phép toán
2.4 Danh sách kiểu ngăn xếp (Stack)
2.4.1 Định nghĩa ngăn xếp (Stack)
2.4.2 Các phép toán trên ngăn xếp
2.4.3 Cài đặt ngăn xếp
2.4.4 ứng dụng ngăn xếp để loại bỏ đệ quy của chương trình
2.5 Danh sách kiểu hàng đợi ( Queue )
2.5.1 Định nghĩa hàng đợi (Queue)
2.5.2 Các phép toán cơ bản trên hàng đợi
2.5.3 Cài đặt hàng bằng danh sách
2.5.4 Cài đặt hàng bằng mảng
2.5.5 Cài đặt hàng bằng mảng theo phương pháp tịnh tiến
2.5.6 Cài đặt hàng với mảng xoay vòng
2.5.7 Cài đặt hàng bằng danh sách liên kết
2.5.8 Một số ứng dụng của cấu trúc hàng
2.6 Danh sách liên két kép
Chương 4. Cây (Tree)
3


4.1 Các thuật ngữ cơ bản trên cây
4.1.1 Định nghĩa
4.1.2 Thứ tự các nút trong cây

4.1.3 Các phương pháp duyệt cây cơ bản
4.1.4 Cây có nhãn, cây biểu thức
4.2 Kiểu dữ liệu trừu tượng cây
4.3 Cài đặt cây
4.3.1 Cài đặt cây bằng mảng
4.3.2 Cài đặt cây bởi danh sách các con của mỗi đỉnh
4.3.3 Cài đặt cây bởi con trái nhất và em liền kề
4.3.4 Cài đặt cây bằng con trỏ
4.4 Cây nhị phân (Binary Tree)
4.4.1 Định nghĩa
4.4.2 Duyệt cây nhị phân
4.4.3 Cài đặt cây nhị phân
4.5 Cây tìm kiếm nhị phân
4.5.1 Định nghĩa
4.5.2 Cài đặt cây tìm kiếm nhị phân
4.6 Cây cân bằng AVL
4.6.1 Định nghĩa
4.6.2 Cài đặt cây AVL
4.6.3 Cân bằng lại khi tính cân bằng bị phá vỡ
4.7 Cây tìm kiếm đa nhánh
4.7.1 Định nghĩa
4.7.2 B-cây
Chương 5. Tập hợp, bảng, tổ chức dữ liệu ở bộ nhớ ngoài
5.1 Tập hợp
5.1.1 Khái niệm tập hợp
5.1.2 Kiểu dữ liệu trừu tượng tập hợp
5.1.3 Cài đặt tập hợp
a) Cài đặt bằng vectơ bit
b) Cài đặt bằng danh sách liên kết
5.1.4 Từ điển

a) Cài đặt từ điển bằng mảng
b) Cài đặt từ điển bằng bảng băm

4


5.1.5 Hàng ưu tiên
a) Khái niệm hàng ưu tiên
b) Cài đặt hàng ưu tiên
5.2 Bảng
5.3.1 Khái niệm về bảng
5.3.2 Các phép toán trên bảng
5.3.3 Cài đặt bảng
5.3.4 Các dạng đặc biệt của bảng
5.3 Mô hình tổ chức dữ liệu ở bộ nhớ ngoài
5.3.1 Các phép toán trên tệp
5.3.2 Tệp băm
5.3.3 Tệp có chỉ số
5.3.4 Tổ chức tệp dưới dạng B-cây
Chương 6. Đồ thị (Graph)
6.1 Các khái niệm cơ bản về đồ thị.
6.2 Kiểu dữ liệu trừu tượng đồ thị.
6.3 Biểu diễn đồ thị
6.3.1 Biểu diễn đồ thị bằng ma trận kề
6.3.2 Biểu diễn đồ thị bằng danh sách các đỉnh kề
6.4 Duyệt đồ thị
6.4.1 Duyệt đồ thị theo chiều sâu
6.4.2 Duyệt đồ thị theo chiều rộng
6.5 Một số bài toán trên đồ thị
6.5.1 Bài toán tìm đường đi ngắn nhất từ một đỉnh của đồ thị

6.5.2 Tìm đường đi ngắn nhất giữa các cặp đỉnh
6.5.3 Bài toán tìm bao đóng chuyển tiếp
6.5.4 Bài toán tìm cây bao trùm tối thiểu
12. 2 Hình thức tổ chức dạy học (phụ lục kèm theo)
13. Ngày phê duyệt:
14. Cấp phê duyệt: Trường Đại học Phương Đông
CHỦ NHIỆM KHOA CNTT

HIỆU TRƯỞNG

PGS.TS Phan Hữu Huân

PGS.TS Bùi Thiện Dụ
5



×