1. Trang chủ
  2. » Thể loại khác

TRƯỜNG ĐẠI HỌC CẦN THƠ ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN Tên học phần: Cấu trúc dữ liệu – Toán TK (Data Structures - Statistics Mathematics)

8 14 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 8
Dung lượng 491,62 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Mục tiêu của học phần: Môn học này giúp sinh viên thực sự hiểu được tầm quan trọng của giải thuật và cách tổ chức dữ liệu, là hai thành tố quan trọng nhất cho một chương trình.. Ứng dụn

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC CẦN THƠ CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự do – Hạnh Phúc

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

1 Tên học phần: Cấu trúc dữ liệu – Toán TK (Data Structures - Statistics Mathematics)

- Mã số học phần : TN185

- Số tín chỉ học phần : 03 tín chỉ

- Số tiết học phần : 30 tiết lý thuyết, 30 tiết thực hành và 90 tiết tự học

2 Đơn vị phụ trách học phần:

- Bộ môn: Tin Học Ứng Dụng

- Khoa/Viện/Trung tâm/Bộ môn: Khoa Học Tự Nhiên

3 Điều kiện tiên quyết: TN035

4 Mục tiêu của học phần:

Môn học này giúp sinh viên thực sự hiểu được tầm quan trọng của giải thuật và cách tổ chức dữ liệu, là hai thành tố quan trọng nhất cho một chương trình Ngoài

ra, giai đoạn này còn giúp sinh viên củng cố và phát triển kỹ năng lập trình vừa được học trong các môn lập trình căn bản ở giai đoạn trước

4.1 Kiến thức: sinh viên phải nắm và ứng dụng được các kiến thức sau

4.1.1 Hiểu thế nào là kiểu dữ liệu, kiểu dữ liệu trừu tượng, cấu trúc dữ liệu và

các tiêu chí đánh giá cấu trúc dữ liệu Giải thuật là gì? Đánh giá độ phức tạp giải thuật

Ứng dụng giải bài tập về tính toán độ phức tạp giải thuật

4.1.2 Kiểu dữ liệu trừu tượng danh sách Các khái niệm cơ bản, các cách cài đặt:

cài đặt bằng mảng, cài đặt bằng con trỏ, cài đặt bằng con nháy

4.1.3 Khái niệm về 2 kiểu danh sách đặc biệt đó là ngăn xếp, hàng đợi; cách cài

đặt và khai báo sử dụng Danh sách liên kết kép

4.1.4 Kiểu dữ liệu trừu tượng cây Các thuật ngữ liên quan và cách cài đặt cây

tổng quát, cũng như cây nhị phân và cây nhị phân tìm kiếm

4.1.5 Kiểu dữ liệu tập hợp, từ điển, bảng băm

4.1.6 Các giải thuật tìm kiếm và sắp xếp nội

4.1.7 Một số kỹ thuật thiết kế giải thuật, tối ưu hóa giải thuật thông qua việc tinh

chỉnh mã lệnh

4.1.8 Ứng dụng các kiến thức đã học giải được các bài tập theo yêu cầu giáo

viên và các bài tập trong các buổi thực hành từ 1->6

Trang 2

4.2 Kỹ năng:

4.2.1 Kỹ năng cứng

- Nắm được các kiểu dữ liệu trừu tượng danh sách, ngăn xếp, hàng đợi, cây,…

- Có khả năng lựa chọn cấu trúc dữ liệu phù hợp nhất khi giải quyết 1 bài toán theo yêu cầu

- Nắm các kỹ thuật thiết kế giải thuật như chia để trị, tham ăn, qui hoạch động,… và vận dụng nó để giải các bài toán thực tế như bài toán người đi giao hàng, bài toán cái ba lô,

- Hiểu và ứng dụng các giải thuật tìm kiếm và sắp xếp nội

- Biết tính độ phức tạp của 1 giải thuật đã cho Vận dụng những kiến thức đã học để phân tích, so sánh và chọn lựa những giải thuật tối ưu trong quá trình lập trình

4.2.2 Kỹ năng mềm

- Có khả năng vận dụng các kiến thức đã học để giải quyết 1 vấn đề thực tế

- Có khả năng làm việc nhóm, thảo luận, lắng nghe và phê bình

- Kỹ năng đọc các tài liệu công nghệ thông tin, nhất là các tài liệu liên quan đến kỹ thuật lập trình

- Phát triển khả năng tư duy và suy luận logic

4.3 Thái độ:

4.3.1 Nghiêm túc trong học tập, thực hiện đúng qui định của trường của lóp

Biết giúp đỡ, chia sẽ kiến thức, kinh nghiệm với bạn bè

4.3.2 Trung thực, chính xác và tinh thần trách nhiệm cao trong công tác, tinh

thần làm việc hợp tác tốt với đồng nghiệp và cộng đồng

4.3.3 Thể hiện trách nhiệm công dân, thái độ và đạo đức nghề nghiệp đúng đắn;

tinh thần ý thức kỷ luật, tác phong công nghiệp; khả năng làm việc khoa học và hợp tác nhóm

4.3.4 Có phương pháp suy nghĩ và làm việc khoa học, đầu tư và sáng tạo tứng

dụng Công nghệ thông tin phục vụ đời sống

4.3.5 Có ý thức học tập và học tập suốt đời

5 Mô tả tóm tắt nội dung học phần:

Môn học này cung cấp cho sinh viên hai mảng kiến thức quan trọng đó là:

- Cấu trúc dữ liệu: cung cấp các kiến thức cơ bản về các kiểu dữ liệu trừu tượng (danh sách, ngăn xếp, hàng đợi, cây, ) và các phép toán cơ bản trên các kiểu dữ liệu trừu tượng Cấu trúc dữ liệu và các phép toán được cài đặt minh họa bằng ngôn ngữ lập trình C (C++)

Trang 3

- Giải thuật: giới thiệu đến sinh viên 2 nội dung chính là kỹ thuật phân tích thuật toán và kỹ thuật thiết kế thuật toán Kỹ thuật phân tích thuật toán đề cập đến các kiến thức và kỹ năng đánh giá để đánh giá các thuật toán, giúp lập trình viên chọn ra được đâu là giải thuật tốt hơn Bên cạnh đó các kỹ năng để tạo ra 1 thuật toán sẽ được truyền tải đến sinh viên thông qua nội dung phần kỹ thuật thiết kế giải thuật Các kỹ thuật được trình bày trong 2 nội dung là ý tưởng của kỹ thuật và các ví dụ minh họa

6 Cấu trúc nội dung học phần:

6.1 Lý thuyết

Lời giới thiệu

Lờ i tựa

Mục lu ̣c

Danh sách chữ viết tắt - thuật ngữ - Quy ước

Danh sách đồ thi ̣, bảng và hình ảnh

Chương 1: Tổng quan về cấu trúc dữ liệu và giải thuật

Mục tiêu

Nội dung

1.1 Từ bài toán đến chương trình

1.2 Khái niệm về kiểu dữ liệu, kiểu dữ liệu trừu

tượng, cấu trúc dữ liệu

1.3 Các tiêu chí đánh giá CTDL

1.4 Khái niệm giải thuật, đánh giá độ phức tạp giải

thuật

Câu hỏi ôn tập

4

½

½

3

4.1.1; 4.2; 4.3

4.1.1; 4.2; 4.3 4.1.1; 4.2; 4.3 4.1.1; 4.2; 4.3 4.1.1; 4.2; 4.3

Chương 2: Các kiểu dữ liệu trừu tượng cơ bản

Mục tiêu

Nội dung

2.1 Kiểu dữ liệu trừu tượng "Danh sách" (List)

2.2 Ngăn xếp (Stack)

2.3 Hàng đợi (Queue)

2.4 Danh sách liên kết kép (Double List)

Câu hỏi ôn tập

12

4

4

2

2

4.1.2; 4.2; 4.3 4.1.3; 4.2; 4.3 4.1.3; 4.2; 4.3 4.1.3; 4.2; 4.3

Chương 3: Cấu trúc cây (Tree)

Mục tiêu

Nội dung

3.1 Các thuật ngữ cơ bản

6

½ 4.1.4; 4.2; 4.3

4.1.4; 4.2; 4.3

Trang 4

3.2 Kiểu dữ liệu trừu tượng cây

3.3 Cài đặt cây

3.4 Cây nhị phân

3.5 Cây nhị phân tìm kiếm

Câu hỏi ôn tập

Bài tập

1.5

1

2

1

4.1.4; 4.2; 4.3 4.1.4; 4.2; 4.3

Chương 4: Tập hợp

Mục tiêu

Nội dung

4.1 Khái niệm

4.2 Các phép toán cơ bản trên tập họp

4.3 Cài đặt tập hợp

4.4.Từ điển

4.5 Bảng băm

Câu hỏi ôn tập

Bài tập

6

¼

¾

2

1

1

1

4.1.5; 4.2; 4.3

4.1.5; 4.2; 4.3 4.1.5; 4.2; 4.3 4.1.5; 4.2; 4.3 4.1.5; 4.2; 4.3 4.1.5; 4.2; 4.3 4.1.5; 4.2; 4.3

Chương 5: Tìm kiếm và sắp xếp

Mục tiêu

Nội dung

5.1 Các giải thuật tìm kiếm nội: Tìm kiếm tuyến tính,

tìm kiếm nhị phân

5.2 Các giải thuật sắp xếp nội: Chọn trực tiếp, chèn

trực tiếp, quicksort, heapsort,…

Câu hỏi ôn tập

Bài tập

6

1

4

1

2

4.1.6; 4.2; 4.3

4.1.6; 4.2; 4.3 4.1.6; 4.2; 4.3 4.1.6; 4.2; 4.3 4.1.6; 4.2; 4.3 4.1.6; 4.2; 4.3 Chương 6: Kỹ thuật thiết kế giải thuật

Mục tiêu

Nội dung

6.1 Kỹ thuật chia để trị

6.2 Kỹ thuật qui hoạch động

6.3 Kỹ thuật tham ăn

6.4 Kỹ thuật quay lui

6.5 Tinh chỉnh mã

Câu hỏi ôn tập, Bài tập

11

1

2

1

3

2

2

4.1.7; 4.2; 4.3

4.1.7; 4.2; 4.3 4.1.7; 4.2; 4.3 4.1.7; 4.2; 4.3 4.1.7; 4.2; 4.3 4.1.7; 4.2; 4.3 4.1; 4.2; 4.3

6.2 Thực hành

Trang 5

Sinh viên sẽ được bố trí 6 buổi thực hành, mỗi buổi phải thực hiện tối đa 6 bài tập theo yêu cầu của giáo viên

Buổi 1: Bài tập về cài đặt danh sách 5 4.1.1; 4.1.2;

4.1.3; 4.2; 4.3

Buổi 2: Danh sách đặc biệt: ngăn xếp, hàng đợi

Buổi 3: Bài tập về cài đặt cây tổng quát, cây nhị phân và

cây nhị phân tìm kiếm

5 4.1.1-> 4.1.4;

4.2; 4.3

Buổi 4: Cài đặt các giải thuật tìm kiếm nội và sắp xếp

nội

5 4.1.1->4.1.5;

4.2; 4.3

Buổi 5: Cài đặt các chương trình minh họa các kỹ thuật

chia để trị, qui hoạch động, tham lam, quay lui

5 4.1; 4.2; 4.3

Buổi 6: Bài tập tổng hợp Ôn tập 5 4.1; 4.2; 4.3

7 Phương pháp giảng dạy:

- Kết hợp phương pháp đặt vấn đề và diễn giảng trên lớp

- Thực hành minh họa thuật toán trên máy tính

- Phân nhóm làm bài tập lớn

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

Sinh viên phải thực hiện các nhiệm vụ như sau:

- Tham dự tối thiểu 80% số tiết học lý thuyết

- Tham gia đầy đủ 100% giờ thực hành và có nộp kết quả bài làm sau mỗi buổi

- Sinh viên lên bảng sửa bài tập và nộp bài tập theo yêu cầu của giáo viên

- Tham dự kiểm tra giữa học kỳ

- Tham dự thi kết thúc học phần

- Chủ động tổ chức thực hiện giờ tự học

9 Đánh giá kết quả học tập của sinh viên:

9.1 Cách đánh giá

Sinh viên được đánh giá tích lũy học phần như sau:

1

Điểm kiểm tra

giữa kỳ trên

máy

- Tham gia 100% buổi thực hành

- Có cộng thêm điểm chuyên cần cho các sinh viên tích cực (đi học đầy

đủ, lên bảng làm bài tập, )

30% 4.1; 4.2;

4.3

Trang 6

- Bắt buộc dự thi

2 Điểm thi kết

thúc học phần

- Thi viết/ trắc nghiệm (sẽ thông báo trong khi học theo tình hình riêng của lớp)

- Tham dự đủ 80% tiết lý thuyết và 100% buổi thực hành

- Bắt buộc dự thi

70% 4.1; 4.2;

4.3

9.2 Cách tính điểm

- Điểm đánh giá thành phần và điểm thi kết thúc học phần được chấm theo thang điểm 10 (từ 0 đến 10), làm tròn đến một chữ số thập phân

- Điểm học phần là tổng điểm của tất cả các điểm đánh giá thành phần của học phần nhân với trọng số tương ứng Điểm học phần theo thang điểm 10 làm tròn đến một chữ số thập phân, sau đó được quy đổi sang điểm chữ và điểm số theo thang điểm

4 theo quy định về công tác học vụ của Trường

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

Thông tin về tài liệu Số đăng ký cá biệt

[1] Alfred V AHO, John E Hopcroft, Jeffrey D Ullman; Data

structures and algorithms; Addison-Wesley, 1987

[2] Nguyễn Văn Linh, Trần Cao Đệ et al; Giáo trình Cấu trúc dữ

liệu; ĐHCT; 2003

[3] Trần Cao Đệ; Cấu trúc dữ liệu; NXB Đại học Cần Thơ;2010

[4] Trần Hạnh Nhi, Nhập môn cấu trúc dữ liệu và thuật toán,

Trường ĐH KHTN, Tp HCM, 2003

[5] Nguyễn Văn Linh, Phân tích và thiết kế thuật toán, NXB Đại

học Cần Thơ, 2010

[6] Lê Hữu Lập, Nguyễn Duy Phương; Giáo trình Kỹ thuật lập

trình; NXB Bưu Điện; 2002

[7] Trương Thị Thanh Tuyền et al; Bài giảng thực hành cấu trúc dữ

liệu (Ngôn ngữ C); ĐHCT; 2006

11 Hướng dẫn sinh viên tự học:

uần Nội dung

thuyết

(tiết)

Thực hành (tiết)

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

1 Chương 1: Tổng quan

1.1 Từ bài toán

1.2 Kiểu dữ liệu

4 0 Nghiên cứu trước: Đọc trước lý thuyết

- Xem lại cách viết 1 chương trình bằng ngôn ngữ C (học phần TN195)

Trang 7

1.3 Các tiêu chí

1.4 Khái niệm giải thuật

- Tài liệu [1]: nội dung từ mục 1.1 đến 1.7, chapter 1; mục 9.1->9.4; chapter 9

- Tài liệu [2]: chương 1

- Tài liệu [5]: chương 1

2 Chương 2: Các kiểu dữ liệu

2.1 Danh sách

Bài tập về danh sách

4 5 - Làm bài tập:

+ Tài liệu [5]: bài tập chương 1 + Tài liệu [1]: bài tập chapter 1

- Đọc trước tài liệu + Tài liệu [1]: nội dung từ mục 2.1 đến 2.2, chapter 2

+ Tài liệu [2]: mục 2.1

3 Chương 2: Các kiểu dữ liệu

2.2 Ngăn xếp

Bài tập về ngăn xếp

4 2.5 - Làm bài tập buổi thực hành số 1

- Đọc trước tài liệu + Tài liệu [1]: mục 2.3, chapter 2 + Tài liệu [2]: mục 2.2, chương 2

4 Chương 2: Các kiểu dữ liệu

2.3 Hàng đợi

Bài tập về hàng đợi

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

4 2.5 - Làm bài tập:

+ Bài 1, 2, 3 buổi TH số 2 + Xem thêm bài tập trong tài liệu [1] trang 72->74

- Đọc trước tài liệu + Tài liệu [1]: mục 2.4, chapter 2 + Tài liệu [2]: mục 2.3, 2.4; chương 2

5 Chương 3: Cây

3.1 Các thuật ngữ cơ bản

3.2 ADT Cây

3.3 Cài đặt cây

3.4 Cây nhị phân

4 2.5 - Làm bài tập 4, 5, 6 buổi TH số 2

- Đọc trước tài liệu + Tài liệu [1]: chapter 3 + Tài liệu [2]: mục 3.1->3.4; chương 3

6 Chương 3: Cây

3.5 Cây tìm kiếm nhị phân

Bài tập

Chương 4: Tập hợp

4.1 Khái niệm

4.2 Các phép toán trên TH

4.3 Cài đặt tập hợp

4.4 Từ điển

Bài tập

2

2

2.5 - Làm bài tập 1, 2, 3 buổi TH số 3

- Đọc trước tài liệu + Tài liệu [1]: chapter 3 + Tài liệu [2]: mục 3.5; chương 3 + Tài liệu [2]: mục 4.1->4.3; chương 4

- Nộp bài tập theo yêu cầu của GV

7 Chương 4: Tập hợp

4.4 Bảng băm

Bài tập

Chương 5: Tìm kiếm

5.1 Các GT tìm kiếm nội

2

2

1 - Làm bài tập 4, 5, 6 buổi TH số 3

- Đọc trước tài liệu + Tài liệu [1]: 4.7, 4.8; chapter 4; + Tài liệu [2]: mục 4.4; chương 4 + Tài liệu [4]: mục 2.1; chương 2

Trang 8

Bài tập

8 Chương 5: Tìm kiếm

5.2 Các giải thuật sắp xếp nội

4 4 - Ôn tập các kiến thức đã học từ đầu

- Làm bài tập 1,2 buổi TH số 4

- Đọc trước tài liệu + Tài liệu [1]: 4.1->4.6; chapter 4 + Tài liệu [2]: mục 3.5; chương 4 + Tài liệu [4]: mục 2.2; chương 2 + Tài liệu [5]: chương 2

9 Chương 6: Kỹ thuật

Kiểm tra giửa kỳ

Bài tập về sắp xếp

6.1 Chia để trị

6.2 Qui hoạch động

3 2.5 - Làm bài tập 3, 4, 5 buổi TH số 4

- Đọc trước tài liệu + Tài liệu [1]: nội dung mục 10.1, 10.2, 10.3; chapter 10

+ Tài liệu [5]: mục 3.1, 3.2, 3.4; chương 3

10 Chương 6: Kỹ thuật

6.3 Kỹ thuật tham ăn

6.4 Kỹ thuật quay lui

Bài tập

4 2.5 - Làm bài tập 1, 2, 3 buổi TH số 5

- Đọc trước tài liệu + Tài liệu [1]: nội dung mục 10.4, 10.5; chapter 10

+ Tài liệu [5]: mục 3.3, 3.5; chương 3

11 Chương 6: Kỹ thuật

6.4 Kỹ thuật quay lui (tt)

Bài tập

6.5 Tinh chỉnh mã

4 5 - Bài tập làm bài 4, 5 buổi TH số 5

+ Chuẩn bị bài buổi TH số 6 + Bài tập trong tài liệu [5] từ trang 93->98

- Đọc trước tài liệu + Tài liệu [1]: nội dung mục 10.4, 10.5; chapter 10

+ Tài liệu [5]: 3.3, 3.5; chương 3

- Nộp bài tập theo yêu cầu của GV

12 Ôn tập và giải đáp thắc mắc 2 5 - Làm bài tập buổi TH số 6

- Ôn tập, tổng hợp lại các kiến thức

đã học

Cần Thơ, ngày 23 tháng 03 năm 2014

TL HIỆU TRƯỞNG

TRƯỞNG KHOA/GIÁM ĐỐC VIỆN/

GIÁM ĐỐC TRUNG TÂM

TRƯỞNG BỘ MÔN

Ngày đăng: 10/10/2022, 09:51

HÌNH ẢNH LIÊN QUAN

4.4. Bảng băm Bài tập  - TRƯỜNG ĐẠI HỌC CẦN THƠ  ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN Tên học phần: Cấu trúc dữ liệu – Toán TK (Data Structures - Statistics Mathematics)
4.4. Bảng băm Bài tập (Trang 7)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w