11
UBND TỈNH LÀO CAI TRƯỜNG CAO ĐẲNG SƯ PHẠM CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự do - Hạnh phúc CHƯƠNG TRÌNH TRÌNH ĐỘ CAO ĐẲNG NGÀNH ĐÀO TẠO: SƯ PHẠM TOÁN TIN ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN 1.Tên học phần: CẤU TRÚC DỮ LIỆU VÀ GIẢI THUẬT số: TINH.222 2. Số tín chỉ : 02 3. Trình độ: Cho sinh viên cao đẳng năm thứ nhất 4. Phân bố thời gian: Tổng số tiết = 30 tiết chuẩn = 30 tiết thực dạy Trong đó: Học trên lớp: 30 tiết Lý thuyết: 19 tiết Bài tập: 10 tiết Kiểm tra: 1 tiết Tự học: 60 giờ 5. Điều kiện tiên quyết: Sinh viên cần học qua học phần Lập trình 6. Bộ môn phụ trách: Tin học 7. Mục tiêu của học phần: Học xong học phần này sinh viên đạt được các năng lực và phẩm chất sau: 7.1. Năng lực: Sau khi học xong học phần, sinh viên phải đạt được các năng lực sau: * Năng lực khoa học bộ môn 1

ĐỀ CƯƠNG CHI TIẾT CTDL&GT TINH.222

Embed Size (px)

Citation preview

Page 1: ĐỀ CƯƠNG CHI TIẾT CTDL&GT TINH.222

UBND TỈNH LÀO CAITRƯỜNG CAO ĐẲNG SƯ PHẠM

CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự do - Hạnh phúc

CHƯƠNG TRÌNH TRÌNH ĐỘ CAO ĐẲNGNGÀNH ĐÀO TẠO: SƯ PHẠM TOÁN TIN

ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN

1.Tên học phần: CẤU TRÚC DỮ LIỆU VÀ GIẢI THUẬT Mã số: TINH.222

2. Số tín chỉ : 02

3. Trình độ: Cho sinh viên cao đẳng năm thứ nhất

4. Phân bố thời gian: Tổng số tiết = 30 tiết chuẩn = 30 tiết thực dạy

Trong đó: Học trên lớp: 30 tiếtLý thuyết: 19 tiếtBài tập: 10 tiếtKiểm tra: 1 tiếtTự học: 60 giờ

5. Điều kiện tiên quyết: Sinh viên cần học qua học phần Lập trình

6. Bộ môn phụ trách: Tin học

7. Mục tiêu của học phần: Học xong học phần này sinh viên đạt được các năng lực và phẩm chất sau:

7.1. Năng lực: Sau khi học xong học phần, sinh viên phải đạt được các năng lực sau:

* Năng lực khoa học bộ môn

- Năng lực phân tích, đánh giá và so sánh các giải thuật: Phân tích, đánh giá các giải thuật dựa trên thời gian thực hiện thuật toán.

- Lựa chọn sử dụng cấu trúc dữ liệu và giải thuật: Lựa chọn kiểu dữ liệu và giải thuật tối ưu nhất để lập trình giải quyết các bài toán cụ thể trong thực tế.

- Năng lực vận dụng kiến thức cấu trúc dữ liệu vào trong các học phần ngành Tin học và vào cuộc sống: Vận dụng các kiến thức về sắp xếp, tìm kiếm, lưu trữ thông tin vào thực tế cuộc sống và vào các học phần chuyên ngành khác.

* Năng lực chung

1

Page 2: ĐỀ CƯƠNG CHI TIẾT CTDL&GT TINH.222

- Năng lực tự học: Có kĩ năng tự học, tự nghiên cứu, giao tiếp, hợp tác với bạn trong thực hiện nhiệm vụ học tập.

- Năng lực giao tiếp: Sử dụng các quy tắc suy luận logic áp dụng vào thực tế giảng dạy và trong cuộc sống.

7.2. Phẩm chất

- Yêu nghề, có phẩm chất đạo đức tốt, chuẩn mực, gương mẫu của người giáo viên tương lai.

- Dũng cảm đấu tranh chống tiêu cực, gian lận trong thi cử, bệnh thành tích trong giáo dục.

8. Mô tả học phần:

Học phần này là cung cấp những hiểu biết nền tảng trong việc thiết kế một chương trình máy tính để thấy rõ được sự cần thiết của việc phân tích, lựa chọn cấu trúc dữ liệu phù hợp cho từng bài toán cụ thể, đồng thời khảo sát một số cấu trúc dữ liệu và thuật toán kinh điển mà lập trình viên nào cũng phải nắm vững như thuật toán tìm kiếm, thuật toán sắp xếp, cấu trúc mảng, danh sách liên kết, ngăn xếp, hàng đợi, cây,..

9. Nhiệm vụ của sinh viên:

* Tham gia dự học trên lớp:

- Thực hiện nghiêm túc các nhiệm vụ do giảng viên hướng dẫn: nghe giảng, phát biểu ý kiến, học cá nhân, thảo luận nhóm...

- Có đủ các bài kiểm tra thường xuyên, giữa kỳ và thi kết thúc học phần

- Có đủ giáo trình, tài liệu và dụng cụ học tập.

* Tự học ở nhà:

- Phải đọc và nghiên cứu trước giáo trình, tài liệu tham khảo, chuẩn bị các ý kiến, đề xuất khi nghe giảng, chuẩn bị sưu tầm và đọc các bài có liên quan đến bài giảng.

- Chuẩn bị tốt các nội dung do giảng viên yêu cầu theo cá nhân, nhóm, đồ dùng và phương tiện học tập phù hợp với nội dung bài học.

- Tích cực liên hệ với các kiến thức đã học với thực tiễn đời sống, thực tiễn ngành và địa phương.

* Dự thi kết thúc học phần.

10. Tài liệu học tập:

2

Page 3: ĐỀ CƯƠNG CHI TIẾT CTDL&GT TINH.222

[1] Đỗ Xuân Lôi - Cấu trúc dữ liệu và giải thuật – NXB Đại học Quốc gia Hà Nội.2006

10.2. Sách tham khảo:

[2] Nguyễn Thị Tĩnh - Giáo trình cấu trúc dữ liệu và giải thuật - NXB Đại học sư phạm. 2005

[3] Đỗ Xuân Lôi - Cấu trúc dữ liệu và giải thuật - Nhà xuất bản giáo dục.2004

[4] Nguyễn Quốc Cường - Cấu trúc dữ liệu + Giải thuật = Chương trình - NXB Giáo dục. 2000

10. Đánh giá sinh viên

- Theo Quy chế đào tạo Cao đẳng hệ chính quy theo học chế tín chỉ, ban hành kèm theo Quyết định số 394/QĐ-CĐSP ngày 09/09/2013 của Hiệu trưởng trường CĐSP Lào Cai.

- Theo Quy định Về việc tổ chức các hoạt động chuyên môn trong trường CĐSP Lào Cai, Ban hành kèm theo Quyết định số 542/QĐ-CĐSP ngày 18 tháng 12 năm 2014 của Hiệu trưởng trường CĐSP Lào Cai.

- Theo Công văn số 256/CĐSP-ĐTNCKH ngày 08/12/2015 v/v hướng dẫn công tác kiểm tra, đánh giá năm học 2015-2016.

- Mục đích đánh giá: Đánh giá để phát triển học tập của SV, giúp SV định hướng việc học tập để phát triển các năng lực nghề nghiệp.

- Nội dung đánh giá: Đánh giá theo chuẩn/mục tiêu năng lực của học phần.

- Phương pháp đánh giá:

+ Đánh giá quá trình: kiêm tra thường xuyên, qua theo dõi của GV kết hợp với SV đánh giá đồng đẳng ý thức học tập. Đánh giá hồ sơ học tập của SV về việc thực hiện các bài tập, các nhiệm vụ học tập theo yêu cầu của GV (điểm hệ số 1)

+ SV làm bài kiểm tra giữa kì hoặc thực hiện các dự án học tập (điểm hệ số 2)

+ Thi kết thúc học phần: Thi vấn đáp - Thực hành: 90 phút (Điểm hệ số 4)

- Điều kiện để được dự thi học phần:

+ Tham gia học tập trên lớp ít nhất là 80% số tiết, nếu nghỉ hơn 9 tiết sinh viên không được dự thi lần 1.

+ Trên lớp thực hiện nghiêm túc các nhiệm vụ học tập.

+ Phần tự học, tự nghiên cứu: Hoàn thành tốt nhất nhiệm vụ mà giảng viên giao cho cá nhân

3

Page 4: ĐỀ CƯƠNG CHI TIẾT CTDL&GT TINH.222

+ Có đủ điểm kiểm tra theo qui định.

- Điểm tổng hợp đánh giá học phần (A) là trung bình cộng (TB) của các điểm bộ phận theo hệ số của từng loại điểm, làm tròn đến phần nguyên. Được tính theo công thức:

Điểm học phần (A) = (ĐQT + KT + Thi*2)/4

11. Thang điểm: 10

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

Chương I

TỔNG QUAN VỀ CẤU TRÚC DỮ LIỆU VÀ GIẢI THUẬT

5 tiết ( Lý thuyết: 3, Bài tập: 2)

Thực tiễn, nghề nghiệp Nội dung kiến thức HP Vận dụngLí thuyết (3 tiết)

Các quan điểm về mối quan hệ giữa cấu trúc dữ liệu và giải thuật:

LINk

1. Tầm quan trọng của cấu trúc dữ liệu và giải thuật trong 1 đề án tin học

- Cấu trúc dữ liệu

- Giải thuật

- Mối quan hệ giữa cấu trúc dữ liệu và giải thuật

2. Đánh giá cấu trúc dữ liệu và giải thuật

- Tiêu chuẩn đánh giá cấu trúc dữ liệu

- Đánh giá độ phức tạp của thuật toán

- Đánh giá tầm quan trọng của cấu trúc dữ liệu và giải thuật đối với người lập trình

- Thực hiện diễn tả thuật toán bằng các cách thức khác nhau: theo sơ đồ thuật, liệt kê và bằng ngôn ngữ lập trình cụ thể như Pascal, C

- Trình bày cách giải bài tập 2.9 - Trang 39, sách giáo trình [1]

Kiểu dữ liệu cơ sở, kiểu dữ liệu có cấu trúc trong Pascal

3. Kiểu dữ liệu

- Kiểu dữ liệu cơ sở

- Kiểu dữ liệu có cấu trúc

- Kiểu dữ liệu con trỏ

- Kiểu dữ liệu tệp tin

Phát hiện các dấu hiệu đặc trưng để lựa chọn các kiểu dữ liệu phù hợp trong quá trình lập trình

4

Page 5: ĐỀ CƯƠNG CHI TIẾT CTDL&GT TINH.222

Bài tập (2 tiết)

Ngôn ngữ lập trình Pascal Bài tập về đánh giá độ phức tạp của thuật toán

- Ước lượng thời gian thực hiện thuật toán

- Lựa chọn thuật toán tối ưu đối với từng trường hợp

Chương II

KỸ THUẬT TÌM KIẾM

6 tiết (Lý thuyết: 4, Bài tập: 2)

Thực tiễn, nghề nghiệp Nội dung kiến thức HP Vận dụngLí thuyết (4 tiết)

Tình huống thực tế:

- Tìm SV có tên là Hằng trong 1 danh sách gồm 100 sinh viên chưa sắp xếp.

- Tìm SV có tên là Hằng trong 1 danh sách gồm 100 sinh viên đã sắp xếp họ tên theo thứ tự từ A đến Z

1. Khái quát về tìm kiếm

2. Tìm kiếm tuyến tính

3. Tìm kiếm nhị phân

4. Tìm kiếm theo chỉ mục

Lựa chọn phương pháp tìm kiếm tối ưu cho yêu cầu của bài toán thực tế

Bài tập (2 tiết)

Các phương pháp tìm kiếm

Giải bài tập 10.1, 10.2, 10.3, 10.4, 10.8 - Trang 278-279, sách giáo trình [1]

Bày tỏ quan điểm về các cách tìm kiếm tối ưu

Chương III

KỸ THUẬT SẮP XẾP

8 tiết (Lý thuyết: 5, Bài tập: 3)

Thực tiễn, nghề nghiệp Nội dung kiến thức HP Vận dụngLí thuyết (5 tiết)

5

Page 6: ĐỀ CƯƠNG CHI TIẾT CTDL&GT TINH.222

Tình huống thực tế:

- Năm 2008, Đại học Công Nghệ có N thí sinh tham gia tuyển sinh, hãy viết chương trình sắp xếp các thí sinh theo thứ tự giảm dần của tổng điểm thi ba môn

- Lựa chọn phương pháp sắp xếp để thời gian thực hiện thuật toán là tối ưu nhất

1. Khái quát về sắp xếp

2. Các giải thuật về sắp xếp nội

- Phương pháp đổi chỗ

- Phương pháp chọn

- Phương pháp chèn

- Phương pháp trộn

3. Các giải thuật về sắp xếp ngoại

- Phương pháp trộn

- Sắp xếp theo chỉ mục

- Đánh giá, so sánh các phương pháp sắp xếp

- Kiểm nghiệm các bước sắp xếp của các giải thuật trên bộ dữ liệu A = [34, 12, 45, 91, 32, 18, 64,73, 21]

Bài tập (3 tiết)

Ý tưởng các phương pháp sắp xếp

Lựa chọn giải các bài tập 9.1, 9.2, 9.3, 9.6 - Trang 235, sách giáo trình [1]

Trình bày giải thuật thể hiện các phương pháp sắp xếp đã học bằng ngôn ngữ lập trình Pascal

Chương IV

DANH SÁCH

7 tiết (Lý thuyết: 5, Bài tập: 2)

Thực tiễn, nghề nghiệp Nội dung kiến thức HP Vận dụngLí thuyết (5 tiết)

Ví dụ thực tế:

- Đoàn tàu

- Xếp hàng mua vé

- Hộp đựng bóng tennis

1. Khái niệm về danh sách

2. Các phép toán trên danh sách

3. Danh sách liên kết

- Danh sách liên kết đơn

- Danh sách liên kết kép

4. Danh sách hạn chế

- Phân tích, đánh giá ưu, nhược điểm của danh sách liên kết

- Giải bài tập 5.2 - Trang 100, Sách giáo trình [1]

- Giải bài tập 5.8 - Trang 101, Sách giáo trình [1]

6

Page 7: ĐỀ CƯƠNG CHI TIẾT CTDL&GT TINH.222

- Hàng đợi (Queue)

- Ngăn xếp (Stack)

Bài tập (2 tiết)

Định nghĩa, các phép toán trên cấu trúc dữ liệu danh sách, ngăn xếp, hàng đợi

Biểu diễn và xây dựng các thao tác cài đặt ngăn xếp dựa trên cấu trúc mảng (vẽ hình minh họa cho từng thao tác)

Phân tích các ứng dụng trong thực tế về tổ chức danh sách theo Hàng đợi và Ngăn xếp

Chương V

CÂY

3 tiết (Lý thuyết: 2, Bài tập: 1)

Thực tiễn, nghề nghiệp Nội dung kiến thức HP Vận dụngLí thuyết (4 tiết)

Tình huống thực tế: Hệ thống kiến thức bài học dưới dạng sơ đồ tư duy

Kiểu dữ liệu trừu tượng cây, các phương pháp duyệt cây (HP Toán rời rạc)

1. Khái niệm, biểu diễn cây

2. Cây nhị phân

3. Cây cân bằng

Cài đặt bằng ngôn ngữ lập trình cụ thể (Pascal, C), xây dựng các thủ tục duyệt cây

Bài tập (3 tiết)

Kiến thức về cây

- Biểu diễn biểu thức đại số dưới dạng cây nhị phân

- Giải bài tập 6.1, 6.2, 6.3, 6.4, 6.5 - Trang 143-144, Sách giáo trình [1]

Ứng dụng kiến thức về cây để xây dựng các mô hình trong thực tế

KIỂM TRA

(1 tiết)

Mục đích: Đánh giá các năng lực của SV

Hình thức: Kiểm tra viết

7

Page 8: ĐỀ CƯƠNG CHI TIẾT CTDL&GT TINH.222

Nội dung: Đánh giá các năng lực giải quyết các bài toán của sinh viên qua nội dung sau:

- Phát biểu bài toán, mô tả giải thuật và đánh giá độ phức tạp của thuật toán

- Định nghĩa, biểu diễn và xây dựng các thao tác cài đặt cấu trúc dữ liệu kiểu danh sách, ngăn xếp, hàng đợi.

- Trình bày ý tưởng của các phương pháp sắp xếp, tìm kiếm và thực hiện việc kiểm nghiệm trên bộ dữ liệu bất kỳ

14. Hướng dẫn thực hiện chương trình:

- Đây là một trong những học phần quan trọng nhất của tin học, nó là nền tảng của các kỹ năng lập trình từ căn bản đến nâng cao. Muốn lĩnh hội được kiến thức cốt lõi của giáo trình sinh viên cần thực hiện tốt các học phần tiên quyết nhất là một số ngôn ngữ lập trình bậc cao như Pascal hay ngôn ngữ C...

- Học phần có nhiều những kiến thức rải rác nằm khắp các chương mục có liên quan tới chương trình THCS, nhất là đối với đối tượng học sinh khá giỏi như: quy hoạch động, các thuật toán tìm kiếm, phương pháp thiết kế thuật giải: quay lui, vét cạn....

- Vì nội dung cơ bản là lý thuyết trừu tượng và khó nên phương pháp cơ bản vẫn là thuyết trình tích cực. Giáo viên cần đơn giản hóa bằng hệ thống các vị dụ thực tiễn gần gũi với sinh viên, chuẩn bị kỹ bài giảng trước khi lên lớp. Mặt khác, về phía sinh viên, cần yêu cầu nghiêm túc việc đọc trước tài liệu khi lên lớp nghe giảng.

- Học phần chỉ gói gọn trong 02 đơn vị tín chỉ với lượng kiến thức lớn và độ khó cao. Một trong những kinh nghiệm khác để sinh viên có thể lĩnh hội được bản chất của hệ thống khái niệm và phương pháp trong giáo trình là luôn gắn bó mật thiết với việc cài đặt bằng một ngôn ngữ lập trình cụ thể. Bên cạnh đó luôn luôn tìm tòi sáng tạo, tìm hiểu ở nhiều tư liệu liên quan để có cái nhìn thấu đáo hơn. Giáo viên sẽ hướng dẫn sinh viên tự học tự nghiên cứu và tra cứu tư liệu phù hợp để có thêm nguồn thông tin tri thức bổ trợ cho giáo trình.

TRƯỞNG KHOA

Hà Vũ Quang

8