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
4 trang |
Chia sẻ: lylyngoc | Lượt xem: 1802 | Lượt tải: 1
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