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

18 22 0
Bài giảng môn Cấu trúc dữ liệu - Chương 1: Tổng quan về cấu trúc dữ liệu và giải thuật

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Bài giảng môn Cấu trúc dữ liệu - Chương 1: Tổng quan về cấu trúc dữ liệu và giải thuật trình bàu các nội dung: Tầm quan trọng của cấu trúc dữ liệu trong một đề án tin học, các tiêu chuẩn đánh giá cấu trúc dữ liệu, các kiểu dữ liệu (khái niệm kiểu dữ liệu, các kiểu dữ liệu cơ sở, các kiểu dữ liệu có cấu trúc, kiểu dữ liệu con trỏ, kiểu tập tin. Mời các bạn cùng tham khảo nội dung chi tiết.

1 BÀI GIẢNG MÔN: CẤU TRÚC DỮ LIỆU Chương 1: TỔNG QUAN VỀ CẤU TRÚC DỮ LIỆU VÀ GIẢI THUẬT NỘI DUNG CHƯƠNG 1.1 Tầm quan trọng cấu trúc liệu đề án tin học 1.2 Các tiêu chuẩn đánh giá cấu trúc liệu 1.3 Các kiểu liệu • Khái niệm kiểu liệu • Các kiểu liệu sở • Các kiểu liệu có cấu trúc • Kiểu liệu trỏ • Kiểu tập tin 1.1 Tầm quan trọng CTDL & giải thuật Thực đề án tin học chuyển toán thực tế thành tốn giải máy tính • Một toán thực tế bao gồm liệu yêu cầu xử lý liệu để xây dựng mơ hình tin học phản ánh toán thực tế cần trọng đến hai vấn đề: • Tổ chức biểu diễn đối tượng thực tế: Mơ hình tin học tốn, cần phải tổ chức cho • • vừa phản ánh xác liệu thực tế, • vừa dễ dàng dùng máy tính để xử lý  xây dựng cấu trúc liệu Xây dựng thao tác xử lý liệu : Từ yêu cầu thực tế, cần tìm giải thuật tương ứng để xác định trình tự thao tác máy tính phải thi hành kết mong muốn  bước xây dựng giải thuật cho tốn • 1.1 Tầm quan trọng CTDL & giải thuật * Mối quan hệ cấu trúc liệu giải thuật Cấu trúc liệu + Giải thuật = Chương trình • Khi có cấu trúc liệu tốt giải thuật phù hợp xây dựng chương trình phụ thuộc thời gian • Một chương trình máy tính hồn thiện có đầy đủ cấu trúc liệu giải thuật 6 1.2 Các tiêu chuẩn đánh giá CTDL Một cấu trúc liệu tốt phải thỏa mãn: • Phản ánh thực tế: Cần xem xét kỹ lưỡng dự trù trạng thái biến đổi liệu chu trình sống để chọn CTDL lưu trữ thể xác đối tượng thực tế • Phù hợp với thao tác đó: Tăng tính hiệu đề án, việc phát triển thuật toán đơn giản, tự nhiên => chương trình đạt hiệu cao tốc độ xử lý • Tiết kiệm tài nguyên hệ thống: CTDL nên sử dụng tài nguyên hệ thống vừa đủ để đảm nhiệm chức Loại tài nguyên cần quan tâm : CPU nhớ 7 1.2 Các tiêu chuẩn đánh giá CTDL Đánh giá độ phức tạp thuật toán • Là công việc ước lượng thời gian thực thuật toán để so sánh tương đối thuật tốn với • Trong thực tế, thời gian thực cịn phụ thuộc cấu hình máy, liệu đưa vào, … • Để ước lượng thời gian thực thuật tốn xem xét trường hợp • Trường hợp tốt nhất: Tmin • Trường hợp xấu nhất: Tmax • Với Tmin Tmax  thời gian thực trung bình thuật tốn Tavg 1.3 Các kiểu liệu • Máy tính lưu trữ liệu dạng nhị phân • Nếu muốn phản ánh liệu đa dạng, cần phải xây dựng phép ánh xạ, qui tắc tổ chức phức tạp che lên tầng liệu nhị phân thô sơ • Nhằm đưa khái niệm logic hình thức lưu trữ khác đựoc gọi kiêu liệu • Các kiểu liệu sở • Các kiểu liệu có cấu trúc • Kiểu liệu trỏ • Kiểu tập tin 1.3 Các kiểu liệu Định nghĩa kiểu liệu Kiểu liệu T xác định , với: • V: tập giá trị hợp lệ mà đối tượng kiểu T lưu trữ • O: Tập thao tác xử lý thi hành đối tượng kiểu T Ví dụ : Giả sử có kiểu liệu mẫu tự= với : Vc={a-z,A-Z} Oc={Lấy mã ASCII ký tự, đổi ký tự thành ký tự hoa} • Dữ liệu lưu trữ chiếm số bytes nhớ gọi kích thước kiểu liệu 10 1.3 Các kiểu liệu Các thuộc tính kiểu liệu • Tên kiểu liệu • Miền giá trị liệu • Kích thước liệu • Tập tốn tử tác động lên kiểu liệu 11 1.3 Các kiểu liệu Các kiểu liệu sở • Kiểu số nguyên • Kiểu số thực • Kiểu ký tự • Kiểu luận lý 12 1.3 Các kiểu liệu Các kiểu liệu có cấu trúc Kiểu chuỗi ký tự: kiểu liệu có cấu trúc đơn giản thường ngơn ngữ lập trình dịnh nghĩa kiểu Trong C hàm xử lý chuỗi đặt thư viện string.lib VD: char S[10] ;// chuỗi ký tự S có chiều dài tối đa 10 (kể ký tự kết thúc) char S[] = ”ABCDEF” ; char *S = “ABCDEF”; 13 1.3 Các kiểu liệu Các kiểu liệu có cấu trúc (tt) Kiểu mảng: kiểu liệu phần tử tập hợp có thứ tự giá trị có cấu trúc lưu trữ liên tiếp nhớ Mảng chiều : []; Mảng nhiều chiều : [] []….; 14 1.3 Các kiểu liệu Các kiểu liệu có cấu trúc (tt) Kiểu mẫu tin: Kiểu mẫu tin tương tự mảng phần tử tập hợp giá trị khác cấu trúc Kiểu mẫu tin thường dùng để mơ tả đối tượng có cấu trúc phức tạp Ví dụ : struct PERSON { char Hoten[]; int NamSinh; char NoiSinh[]; char GioiTinh; // 0:Nữ, 1: Nam char DiaChi[]; } 15 1.3 Các kiểu liệu Kiểu liệu trỏ Cho trước kiểu T = Kiểu trỏ ký hiệu Tp đến phần tử có kiểu T định nghĩa sau: Tp = Trong đó: Tp = {{các địa lưu trữ đối tượng kiểu T}, NULL} Op = {các thao tác định địa đối tượng kiểu T biết trỏ đến đối tượng đó} Kiểu trỏ kiểu liệu sở dùng lưu địa đối tượng liệu khác Biến thuộc kiểu trỏ Tp biến mà giá trị địa vùng nhớ ứng với biến kiểu T, giá trị NULL 16 1.3 Các kiểu liệu Kiểu liệu trỏ (tt) • Kích thước biến trỏ tùy thuộc vào quy ước số byte mơ hình nhớ ngơn ngữ lập trình cụ thể • Biến trỏ C++ có kích thước bytes tùy vào trỏ NEAR hay FAR • Cú pháp định nghĩa liệu kiểu trỏ typedef * ; Các thao tác kiểu trỏ: • Khi biến trỏ ‘p’ lưu trữ địa đối tượng x ta nói “p trỏ đến x” • Gán địa vùng nhớ trỏ p: p = ; p = + • Truy xuất (xem) nội dung đối tượng p trỏ đến (*p) 17 1.3 Các kiểu liệu Kiểu liệu tập tin • Tập tin kiểu liệu đặc biệt, kích thước tối đa tập tin phụ thuộc không gian đĩa • Việc đọc, ghi liệu tập tin thời gian, khơng an tồn liệu • Thông thường chuyển liệu tập tin (một phần hay toàn bộ) vào nhớ để xử lý 18 Bài tập • Xem lại việc sử dụng trỏ C++ • Xem lại thao tác với tập tin • Xem lai việc sử dụng kiểu liệu mẫu tin • Bài tập giáo trình chương ... bước xây dựng giải thuật cho tốn • 1.1 Tầm quan trọng CTDL & giải thuật * Mối quan hệ cấu trúc liệu giải thuật Cấu trúc liệu + Giải thuật = Chương trình • Khi có cấu trúc liệu tốt giải thuật phù...2 Chương 1: TỔNG QUAN VỀ CẤU TRÚC DỮ LIỆU VÀ GIẢI THUẬT NỘI DUNG CHƯƠNG 1.1 Tầm quan trọng cấu trúc liệu đề án tin học 1.2 Các tiêu chuẩn đánh giá cấu trúc liệu 1.3 Các kiểu liệu • Khái... Khái niệm kiểu liệu • Các kiểu liệu sở • Các kiểu liệu có cấu trúc • Kiểu liệu trỏ • Kiểu tập tin 1.1 Tầm quan trọng CTDL & giải thuật Thực đề án tin học chuyển toán thực tế thành tốn giải máy tính

Ngày đăng: 09/05/2021, 18:25

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan