Cấu trúc dữ liệu - Chương 1: Giới thiệu tổng quan

Khi giải quyết một bài toán thực tế bằng máy tính cần quan tâm đến:  Tổ chức lưu trữ dữ liệu (CTDL)  Phương pháp xử lý dữ liệu (Thuật toán) Vai trò của CTDL Niclaus Wirth CTDL + Thuật toán =Chương trình

pdf4 trang | Chia sẻ: lylyngoc | Lượt xem: 1676 | Lượt tải: 1download
Bạn đang xem nội dung tài liệu Cấu trúc dữ liệu - Chương 1: Giới thiệu tổng quan, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
LOGO 11/03/2010 Cấu Trúc Dữ Liệu (Data Structures) Phan Mạnh Thường 3/11/2010 www.lhu.edu.vn Thông tin về môn học • Số tiết lý thuyết : 45 • Số tiết thực hành : 30 Thời lượng • Nắm vững ngôn ngữ C • Các khái niệm lập trình cơ bản Điều kiện Cung cấp các kiến thức cơ bản về • Các cấu trúc lưu trữ dữ liệu • Các thuật toán xử lý Mục tiêu 3/11/2010 www.lhu.edu.vn Thông tin về môn học 1. Trần Hạnh Nhi và Dương Anh Đức, Giáo Trình Cấu Trúc Dữ Liệu, CĐ Công Nghệ Thông Tin TP. HCM, 2003. 2. Chủ biên: Hoàng Kiếm, Giáo trình cấu trúc dữ liệu, ĐH KHTN, 1996. 3. Niclaus Wirth, bản dịch Algorithms+Data structures, NXB Thống Kê, 1981. 4. Đỗ Xuân Lôi, Cấu trúc dữ liệu và giải thuật, NXB Khoa học Kỹ Thuật, 1996. 5. Nguyễn Quốc Cường và Hoàng Đức Hải, Cấu trúc dữ liệu + Giải Thuật = Chương Trình, NXB Giáo Dục, 1995. 6. Đinh Mạnh Tường, Cấu trúc dữ liệu và giải thuật, NXB Giáo dục, 1998 7. Nguyễn Trung Trực, Cấu trúc dữ liệu, ĐH Kỹ thuật, 1995 Tài liệu tham khảo 3/11/2010 www.lhu.edu.vn Nội dung môn học Chương 1: Giới thiệu tổng quan Chương 2: Các cấu trúc dữ liệu cơ bản2 Chương 3: Cấu trúc lưu trữ ngoài3 Chương 04: Cấu trúc dữ liệu động4 Chương 05: Bảng băm5 Chương 06: Cấu trúc cây5 3/11/2010 www.lhu.edu.vn Thông tin về môn học Gồm 3 cột điểm: • Điểm chuyên cần (10%): điểm danh buổi học • Điểm kiểm tra (30%): bài tập, seminar • Điểm thi (60%): làm bài thi giấy Đánh giá Giới thiệu tổng quan Chương 1 Trừu tượng hóa dữ liệu4 Vai trò của CTDL1 Tiêu chuẩn đánh giá2 Một vòng bộ nhớ3 Nội dung 3/11/2010 www.lhu.edu.vn Chương 1 Giới thiệu tổng quan  Khi giải quyết một bài toán thực tế bằng máy tính cần quan tâm đến:  Tổ chức lưu trữ dữ liệu (CTDL)  Phương pháp xử lý dữ liệu (Thuật toán) Vai trò của CTDL Niclaus Wirth CTDL + Thuật toán = Chương trình 3/11/2010 www.lhu.edu.vn Chương 1 Giới thiệu tổng quan  Một CTDL được đánh giá theo các tiêu chuẩn:  Phản ánh đúng dữ liệu thực tế  Phù hợp với các thao tác xử lý trên đó  Tiết kiệm tài nguyên hệ thống Vai trò của CTDL 3/11/2010 www.lhu.edu.vn Chương 1 Giới thiệu tổng quan Một vòng quanh bộ nhớ  Mọi dữ liệu trên máy tính đều ở dạng nhị phân  Bộ nhớ là nơi lưu trữ dữ liệu và các lệnh xử lý, bộ nhớ gồm:  RAM  Cache memory  Persistent storage Tốc độ truy xuất: Cache>>RAM>> Persistent storage 3/11/2010 www.lhu.edu.vn Chương 1 Giới thiệu tổng quan  Đơn vị lưu trữ trong bộ nhớ là Byte  Bộ nhớ chính gồm nhiều byte (ô nhớ), mỗi ô được đánh địa chỉ gọi là địa chỉ bộ nhớ (Memory Address) Một vòng quanh bộ nhớ Kiểu số nguyên 2 bytes (int) 3/11/2010 www.lhu.edu.vn Chương 1 Giới thiệu tổng quan  Dữ liệu trong thực tế rất đa dạng  Trừu tượng hóa dữ liệu giúp ánh xạ một nhóm byte thành một kiểu dữ liệu (Data Type)  Kiểu dữ liệu T được xác định bởi một bộ trong đó :  V (Values): tập các giá trị hợp lệ mà một đối tượng kiểu T có thể lưu trữ  O (Operations): tập các thao tác xử lý có thể thi hành trên đối tượng kiểu T Trừu tượng hóa dữ liệu 3/11/2010 www.lhu.edu.vn Chương 1 Giới thiệu tổng quan Ví du:  Giả sử có kiểu dữ liệu mẫu tự = với  Vc = { a-z,A-Z}  Oc = { lấy mã ASCII của ký tự, biến đổi ký tự thường thành ký tự hoa…}  Giả sử có kiểu dữ liệu số nguyên = với  Vi = { -32768..32767}  Oi = { +, -, *, /, %} Trừu tượng hóa dữ liệu 3/11/2010 www.lhu.edu.vn Chương 1 Giới thiệu tổng quan  Các thuộc tính của 1 kiểu dữ liệu bao gồm:  Tên kiểu dữ liệu  Miền giá trị  Kích thước lưu trữ  Tập các toán tử tác động lên kiểu dữ liệu Trừu tượng hóa dữ liệu 3/11/2010 www.lhu.edu.vn Chương 1 Giới thiệu tổng quan Thông thường, các kiểu dữ liệu cơ bản bao gồm :  Kiểu có thứ tự rời rạc: số nguyên, ký tự, logic, liệt kê, miền con …  Kiểu không rời rạc: số thực Trừu tượng hóa dữ liệu 3/11/2010 www.lhu.edu.vn Chương 1 Giới thiệu tổng quan Trừu tượng hóa dữ liệu Tên kiểu Kthước Miền giá trị Ghi chú Char 01 byte -128 đến 127 Có thể dùng như số nguyên 1 byte có dấu hoặc kiểu ký tự Unsign char 01 byte 0 đến 255 Số nguyên 1 byte không dấu Int 02 byte -32738 đến 32767 Số nguyên 2 byte Unsign int 02 byte 0 đến 65535 Có thể gọi tắt là unsign Long 04 byte -232 đến 231 -1 Unsign long 04 byte 0 đến 232-1 Float 04 byte 3.4E-38 3.4E38 Giới hạn chỉ trị tuyệt đối.Các giá trị <3.4E-38 được coi = 0. Tuy nhiên kiểu float chỉ có 7 chữ số có nghĩa. Double 08 byte 1.7E-308 1.7E308 Long double 10 byte 3.4E-4932 1.1E4932 Các kiểu dữ liệu cơ bản trong ngôn ngữ C