Bài giảng Cấu trúc dữ liệu và giải thuật: Phần mở đầu - ĐH Bách khoa TP. HCM
lượt xem 6
download
Bài giảng "Cấu trúc dữ liệu và giải thuật: Phần mở đầu" giới thiệu cho sinh viên những kiến thức cần thiết khi học môn học, các kiến thức chính của môn học, cách dùng phương pháp hướng đối tượng, ngôn ngữ lập trình minh họa, mã giả (pseudocode),... Mời các bạn cùng tham khảo nội dung chi tiết.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Cấu trúc dữ liệu và giải thuật: Phần mở đầu - ĐH Bách khoa TP. HCM
- A C B CẤU TRÚC DỮ LIỆU VÀ F GIẢI THUẬT (501040) D E G Giới thiệu môn học K H
- Giới thiệu Môn học giới thiệu: Các cấu trúc dữ liệu cơ bản Các giải thuật điển hình trên các cấu trúc dữ liệu đó Dùng phương pháp hướng đối tượng. Ngôn ngữ lập trình minh hoạ: Mã giả (pseudocode) C++ (không được giảng dạy chính thức trong môn học) ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Giới thiệu môn học 2
- Nội dung Chương 1. Tổng quan Chương 2. Stack Chương 3. Queue Chương 4. Stack và Queue liên kết Chương 5. Đệ qui Chương 6. List và String Chương 7. Tìm kiếm Chương 8. Sắp xếp Chương 10. Cây nhị phân Chương 11. Cây nhiều nhánh Chương 9. Bảng và truy xuất thông tin ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Giới thiệu môn học 3
- Tài liệu tham khảo [1] Kruse, R. L., and Ryba, A. J. 1999. Data Structures and Program Design in C++. Prentice-Hall Inc. [2] Trân, N. N. B. 2001. Giáo trình Cấu trúc Dữ liệu và Giải thuật. KhoaCNTT, ĐH Bách KhoaTp.HCM [3] Jesse Liberty, 1997. Teach Yourself C++ in 21 days. ISBN: 0-672-31070-8, SAMS [4] Davis Chapman, 1998. Teach Yourself Visual C++ 6 in 21 days. ISBN: 0-672-31240-9, SAMS ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Giới thiệu môn học 4
- Vấn đề ngôn ngữ lập trình Dùng C++ để diễn đạt => Có vấn đề? Mã giả (pseudo code) Giả lập, thường là dễ hiểu, không chi tiết đến các kỹ thuật lập trình Ở cấp độ hết sức tổng quát: gần ngôn ngữ tự nhiên Hoặc rất chi tiết: như dùng ngôn ngữ tựa Pascal, tựa C++ ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Giới thiệu môn học 5
- Giải thuật bằng mã giả Ví dụ: Mã giả của bubble sort Giải thuật 1 Giải thuật 2 Algorithm Bubble sort Algorithm Bubble sort Input: The list A of n elements is Input: The list A of n elements is given given Output: The list A is sorted Output: The list A is sorted 1. loop for n time 1. for outter in 0..(n-2) 1.1. for inner in 0..(n-2- outter) 1.1. for each pair in the list 1.1.1. if Ainner+1 < Ainner 1.1.1. if it is not in ordered 1.1.1.1. swap Ainner, Ainner+1 1.1.1.1. exchange them End Bubble sort End Bubble sort ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Giới thiệu môn học 6
- Giải thuật bằng ngôn ngữ lập trình Ví dụ: Lập trình cụ thể Bubble sort Giải thuật 1: Pascal Giải thuật 2: C++ procedure BubbleSort(var A: list); void BubbleSort(list A) var i,j: int; { begin int i, j; for i := 1 to n-1 do for (i=0; i < n-2; i++) for j := 1 to (n-1-i) do for (j=0; j
- So sánh mã giả và NNLT Nhận xét: Mã giả 1: gần với cách trao đổi của con người nhất nhưng khó lập trình nhất Mã giả 2: dễ lập trình hơn Phương pháp: Đầu tiên: cách giải quyết vấn đề bằng máy tính số (giải thuật bằng mã giả) Sau đó: ngôn ngữ lập trình cụ thể Học: Nhớ giải thuật (mã giả) Dùng NNLT cụ thể để minh chứng ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Giới thiệu môn học 8
- Cấu trúc môn học Cấu trúc: Lý thuyết: 42 tiết/học kỳ Thực hành: 14 tiết/học kỳ Bài tập lớn: 4 bài Tỉ lệ điểm: Kiểm tra giữa kỳ : 20% Thực hành và bài tập lớn: 20% Thi cuối kỳ: 60% ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Giới thiệu môn học 9
- Bài tập Đề bài tập: Tập bài tập in sẵn Các bài trong sách tiếng Anh Tự sưu tầm Giải bài tập: Giờ trên lớp Giờ thực hành Giờ tiếp sinh viên ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Giới thiệu môn học 10
- Bài tập lớn Mục đích: Hiểu bài Làm bài ở nhà Số lượng: 4 bài, nhận đề và nộp bài theo lịch học Đánh giá: thang điểm A,B,C,D Hình thức: Bài làm bằng giấy, file và nộp qua web ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Giới thiệu môn học 11
- Thực hành Mục đích: Rèn luyện khả năng làm bài độc lập Sử dụng nhuần nhuyễn các kiến thức đã học. Giải bài tập + Trao đổi các thắc mắc Thời lượng: 4 buổi Là các buổi học lý thuyết được chuyển thành Kiểm tra lấy điểm ở buổi cuối cùng ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Giới thiệu môn học 12
- Nội dung thi Hai nội dung chính: Phần lý thuyết: Thực hiện giải thuật bằng tay (vẽ hình minh hoạ) Thiết kế cấu trúc dữ liệu theo yêu cầu Đánh giá độ phức tập giải thuật Phần lập trình: Trình bày giải thuật chi tiết bằng mã giả Hiện thực bằng ngôn ngữ lập trình C++ ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Giới thiệu môn học 13
- Trao đổi phục vụ học tập Trang Web: http://www.dit.hcmut.edu.vn/~thang/CTDL Có các mục: hỏi đáp, thông tin chi tiết, lịch giảng dạy Cán bộ giảng dạy: ThS. Nguyễn Ngô Bảo Trân (tran@dit.hcmut.edu.vn) ThS. Bùi Hoài Thắng (thang@dit.hcmut.edu.vn) Trợ giảng: Nguyễn Lưu Đăng Khoa (nldkhoa@dit.hcmut.edu.vn) Dương Ngọc Hiếu (dnhieu@dit.hcmut.edu.vn) ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Giới thiệu môn học 14
- Sinh viên senior Sinh viên senior: A B C D Các buổi tiếp SV phục vụ môn học: T.Thắng: C.Trân: ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Giới thiệu môn học 15
- ĐH Bách Khoa Tp.HCM Khoa Công nghệ Thông tin Giới thiệu môn học 16
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Cấu trúc dữ liệu - Bài 1:Tổng quan về cấu trúc dữ liệu và giải thuật
47 p | 175 | 17
-
Bài giảng Cấu trúc dữ liệu 1: Chương 1 - Lương Trần Hy Hiến
7 p | 162 | 9
-
Bài giảng Cấu trúc dữ liệu và giải thuật trong C++ - Bài 8: Cấu trúc dữ liệu ngăn xếp
28 p | 77 | 9
-
Bài giảng Cấu trúc dữ liệu giải thuật: Các kiểu dữ liệu trừu tượng cơ bản - Cấu trúc dữ liệu tuyến tính
92 p | 116 | 9
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Cấu trúc dữ liệu cây đỏ đen - Bùi Tiến Lên
25 p | 81 | 8
-
Bài giảng Cấu trúc dữ liệu và giải thuật – Bài 17: Cấu trúc dữ liệu dạng cây
21 p | 77 | 8
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Các cấu trúc dữ liệu
193 p | 59 | 7
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 1 - Trần Minh Thái (2016)
62 p | 94 | 6
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 1 - Trần Minh Thái (Trường Đại học Hồng Bàng )
62 p | 160 | 6
-
Bài giảng Cấu trúc dữ liệu - Chương 3: Cấu trúc cây
65 p | 58 | 6
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Cấu trúc dữ liệu cây AA - Bùi Tiến Lên
30 p | 35 | 6
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 1 – Trần Minh Thái (2017)
67 p | 106 | 4
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Cấu trúc dữ liệu cây - Bùi Tiến Lên
68 p | 40 | 4
-
Bài giảng Cấu trúc dữ liệu: Chương 1 - ThS. Thiều Quang Trung (2018)
44 p | 43 | 4
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Cấu trúc dữ liệu cây AVL - Bùi Tiến Lên
38 p | 47 | 4
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 5 - Ngô Quang Thạch
24 p | 58 | 3
-
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 2 - Th.S Thiều Quang Trung
41 p | 68 | 3
-
Bài giảng Cấu trúc dữ liệu giải thuật: Cấu trúc dữ liệu
17 p | 51 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn