– Cung cấp các kiến thức cơ bản về cấu trúc dữ liệu và giải thuật như cách tổ chức biểu diễn các đối tượng dữ liệu từ thế giới thật, cách xây dựng các thao tác xử lý dữ liệu tương ứng[r]
Trang 1C HƯƠNG I
T ỔNG Q UAN C ẤU TRÚC D Ữ L IỆU
GV Th.S Thiều Quang Trung
Bộ môn Khoa học cơ bản Trường Cao đẳng Kinh tế Đối ngoại
Trang 2• Giới thiệu đề cương môn học
1
• Các khái niệm cơ bản
2
• Giải thuật, biểu diễn và độ phức tạp
3
• Vai trò của cấu trúc dữ liệu
4
• Các tiêu chuẩn của giải thuật và cấu trúc dữ liệu
• Các tiêu chuẩn của giải thuật và cấu trúc dữ liệu
5
Trang 3Giới thiệu đề cương môn học
• Học phần: Cấu trúc dữ liệu và giải thuật
• Yêu cầu: bắt buộc cho chuyên ngành Tin học quản lý
• Số tín chỉ: 3
• Phân bổ thời gian:
– Giảng lý thuyết: 30 tiết
– Thực hành: 30 tiết
– Tự học : 90 tiết
Trang 4• Tóm tắt nội dung học phần:
– Cung cấp các kiến thức cơ bản về cấu trúc dữ liệu và giải thuật như cách tổ chức biểu diễn các đối tượng
dữ liệu từ thế giới thật, cách xây dựng các thao tác
xử lý dữ liệu tương ứng với cấu trúc dữ liệu biểu
diễn, cách đánh giá lựa chọn giải thuật xử lý dữ liệu phù hợp với cấu trúc dữ liệu biểu diễn
– Các kiến thức này làm nền tảng cho sinh viên học
tiếp các học phần lập trình từ căn bản đến nâng cao,
cở sở để thiết kế xây dựng các phần mềm tin học khi làm đồ án, đề tài hay làm việc sau khi ra trường
Trang 5Giới thiệu đề cương môn học
• Tài liệu: slides bài giảng và bài tập do giảng viên biên soạn, link: https://sites.google.com/site/thieutrung/
• Tài liệu tham khảo:
– [1] Niklaus Wirth, Data Structures and Algorithms,
Prentice Hall, 2004
– [2] Robert Sedgewick, Algorithms, Addison Wesley,
2001
– [3] Trần Hạnh Nhi & Dương Anh Đức, Giáo trình Cấu
trúc dữ liệu và Giải thuật, Đại học quốc gia thành phố
Hồ Chí Minh, 2001
Trang 6Tiêu chuẩn đánh giá sinh viên:
• Điểm trung bình bộ phận: trọng số 40%
– 02 bài kiểm tra hệ số 2:
• 01 bài kiểm tra tự luận 1 tiết
• 01 bài kiểm tra thực hành 1 tiết
• Điểm thi kết thúc học phần: trọng số 60%
– Hình thức thi: thực hành
Trang 7Nội dung học
Chương 1: Giới thiệu đề cương môn học và Tổng quan về
cấu trúc dữ liệu và giải thuật
Chương 2: Các kiểu dữ liệu cơ bản và giải thuật tìm kiếm
Chương 3: Các giải thuật sắp xếp dữ liệu
Chương 4: Danh sách liên kết
Chương 5: Ngăn xếp, Hàng đợi, Đệ quy
Chương 6: Cây nhị phân
Giới thiệu đề cương môn học
Trang 8• Một chương trình máy tính (computer program) là tập các câu lệnh để điều khiển một máy tính sinh ra một kết quả cụ thể
• Viết các chương trình máy tính gọi là lập trình máy tính (computer programming)
• Ngôn ngữ để tạo các chương trình máy tính gọi là ngôn ngữ lập trình
• Software là một chương trình hay tập hợp các
chương trình
Trang 9Các khái niệm cơ bản
• Một số ngôn ngữ thông dụng
– FORTRAN 1957
– COBOL 1960s
– BASIC 1960s
– PASCAL 1971 Structure programming
– C 1980
– C++, Java 1985 Object-oriented programming
• Cú pháp (syntax)
– Cú pháp của một ngôn ngữ lập trình là tập các luật để viết các câu lệnh chính xác
Trang 10hạn các chỉ thị có thể thi hành để đạt mục tiêu đề ra nào đó
• Ví dụ: giải thuật tìm phần tử mang giá trị lớn nhất trong mảng có n phần tử, gồm các bước sau:
– Bước 1: amax=a0; i=1;
– Bước 2: nếu i < n thì
– ngược lại: qua bước 4;
– Bước 3: i=i+1; quay lại bước 2;
– Bước 4: Phần tử cần tìm là a