Bài giảng Cấu trúc dữ liệu và giải thuật - GV. Hồ Sĩ Đàm
Số trang: 110
Loại file: ppt
Dung lượng: 821.50 KB
Lượt xem: 13
Lượt tải: 0
Xem trước 10 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Bài giảng Cấu trúc dữ liệu và giải thuật gồm 10 chương. Nội dung bài giảng trình bày các vấn đề thuật toán và phân tích thuật toán, đệ quy, các dữ liệu có cấu trúc, danh sách, cây, bảng băm, sắp xếp, tìm kiếm, đồ thị, các kỹ thuật thiết kế thuật toán.
Nội dung trích xuất từ tài liệu:
Bài giảng Cấu trúc dữ liệu và giải thuật - GV. Hồ Sĩ Đàm CẤU TRÚC DỮ LIỆU VÀ GIẢI THUẬTGiảng viên : Hồ Sĩ ĐàmEmail damhs@vnu.edu.vnGiới thiệu Thời lượng: 4 buổi Mục tiêu: - Giới thiệu đề cương phần cấu trúc dữ liệu và thuật toán ( môn Tin học cơ sở); - Giải đáp thắc mắc của thi sinh. ̀ ̣ ̉ Tai liêu tham khao– Thomas H. Cormen, Introduction to Algorithms, MIT Press, 1990– R. Sedgevick,Algorithms Addison- Wesley, Bản dịch tiếng Việt: Cẩm nang thuật toán ( t ập 1, 2).– Hồ Sĩ Đàm, Nguyễn Việt, Hà Bùi Thế Duy– Đinh Mạnh Tường, Đỗ Xuân LôiNội dungChương I : Thuật toán và phân tích thuật toánChương II : Đệ quyChương III : Các dữ liệu có cấu trúcChương IV : Danh sáchChương V : CâyChương VI : Bảng bămChương VII : Sắp xếpChương VIII : Tìm kiếmChương IX : Đồ thịChương X : Các kỹ thuật thiết kế thuậ toánCHƯƠNG I: THUẬT TOÁN VÀ PHÂN TÍCH THUẬTTOÁN Giải bài toán trên máy tính Mô hình dữ liệu Cấu trúc dữ liệu Bài toán và thuật toánCHƯƠNG I:THUẬT TOÁN VÀ PHÂN TÍCH THUẬT TOÁN1. Giải bài toán trên máy tínhBước 1. Xác định bài toán: Xác định tập Input và OutputBước 2. Lựa chọn hoặc thiết kế thuật toán a) Lựa chọn hoặc thiết kế thuật toán – Giải bài toán nhiều thuật toán – Không gian ? – Thời gian ?; – Cài đặt ?CHƯƠNG I:TOÁN VÀ PHÂN TÍCH THUẬT TOÁN1. Giải bài toán trên máy tính b) Mô tả thuật toán • Input: Hai số nguyên dương a và b; • Output: q và r : a= bq+r. • Ý tưởng: - Nếu a < b thì q = 0 và r = a. Kết thúc. - Nếu a > b thì a giảm đi b và q tăng lên 1. L ặp cho đến khi a < b.CHƯƠNG I:THUẬT TOÁN VÀ PHÂN TÍCH THUẬT TOÁN1. Giải bài toán trên máy tính*) Cách liệt kê *) Sơ đồ khốiB1: Nhập a và b;B2: q ⇐ 0;B3: Nếu a < b thì r ⇐ a rồi chuyển đến B5;B4: a ⇐ a - b, q ⇐ q + 1 rồi quay về B3;B5: Đưa ra r và q. Kết thúc.CHƯƠNG I:THUẬT TOÁN VÀ PHÂN TÍCH THUẬT TOÁN1. Giải bài toán trên máy tính Uses Crt; Uses Crt; Var a, b, q, r: integer; Var a, b, q, r: integer; BeginBước 3. Viết chương Begin Clrscr; Clrscr; trình: Writeln (‘Chuong trinh chia Euclid’); Writeln (‘Chuong trinh chia Euclid’); Write (‘Nhap so a: ’); Write (‘Nhap so a: ’); Chọn CTDL; Readln (a); Readln (a); Write (‘Nhap so b: ’); Write (‘Nhap so b: ’); Ngôn ngữ lập trình Readln (b); Readln (b); q:=0; q:=0; While aa >= b Do While >= b Do Begin BeginBước 4. Hiệu chỉnh: Dec(a,b); Dec(a,b); Inc(q); Inc(q); Xây dựng các bộ input End; End; r:= a; r:= a; (test) tiêu biểu; Writeln (‘Thuong qq = ’, q); Writeln (‘Thuong = ’, q); Writeln (‘Phan du r r = ’, r); Writeln (‘Phan du = ’, r); Chạy thử. Readln; Readln; End. End.CHƯƠNG I:THUẬT TOÁN VÀ PHÂN TÍCH THUẬT TOÁN1. Giải bài toán trên máy tínhBước 5. Viết tài liệu: Hướng dẫn sử dụng; Thuật toán, Cấu trúc dữ liệu; …….CHƯƠNG I:THUẬT TOÁN VÀ PHÂN TÍCH THUẬT TOÁN2. Mô hình dữ liệu (Data model) Là các trừu tượng :đồ thị, tập hợp, danh sách, cây... Hai khía cạnh: – Giá trị (kiểu dữ liệu) – Các phép toán ( operation) Chương trình có thể truy xuất đến các vùng lưu trữ.CHƯƠNG I:THUẬT TOÁN VÀ PHÂN TÍCH THUẬT TOÁN3. Cấu trúc dữ liệu (Data structures) Là các đơn vị cấu trúc (construct) của NNLT dùng để biểu diễn các mô hình dữ liệuVí dụ: mảng, bản gi, file,xâu,..CHƯƠNG I:THUẬT TOÁN VÀ PHÂN TÍCH THUẬT TOÁN4. Bài toán và thuật toán4.1. Bài toán Xác định rõ Input và OutputVí dụ:Kiểm tra xem N có phải là số nguyên tố haykhông?- Input : Số nguyên dương N- Output : Trả lời N là số nguyên tố hay không?CHƯƠNG I:THUẬT TOÁN VÀ PHÂN TÍCH THUẬT TOÁN4. Bài toán và thuật toán4.2. Thuật toán Thuật toán để giải một bài toán là mộtdãy hữu hạn các thao tác đươc sắp xếptheo một trật tự xác định sao cho sau khithực hiện dãy thao tác đó, từ Input c ủabài toán này, ta nhận được Output cầ ...
Nội dung trích xuất từ tài liệu:
Bài giảng Cấu trúc dữ liệu và giải thuật - GV. Hồ Sĩ Đàm CẤU TRÚC DỮ LIỆU VÀ GIẢI THUẬTGiảng viên : Hồ Sĩ ĐàmEmail damhs@vnu.edu.vnGiới thiệu Thời lượng: 4 buổi Mục tiêu: - Giới thiệu đề cương phần cấu trúc dữ liệu và thuật toán ( môn Tin học cơ sở); - Giải đáp thắc mắc của thi sinh. ̀ ̣ ̉ Tai liêu tham khao– Thomas H. Cormen, Introduction to Algorithms, MIT Press, 1990– R. Sedgevick,Algorithms Addison- Wesley, Bản dịch tiếng Việt: Cẩm nang thuật toán ( t ập 1, 2).– Hồ Sĩ Đàm, Nguyễn Việt, Hà Bùi Thế Duy– Đinh Mạnh Tường, Đỗ Xuân LôiNội dungChương I : Thuật toán và phân tích thuật toánChương II : Đệ quyChương III : Các dữ liệu có cấu trúcChương IV : Danh sáchChương V : CâyChương VI : Bảng bămChương VII : Sắp xếpChương VIII : Tìm kiếmChương IX : Đồ thịChương X : Các kỹ thuật thiết kế thuậ toánCHƯƠNG I: THUẬT TOÁN VÀ PHÂN TÍCH THUẬTTOÁN Giải bài toán trên máy tính Mô hình dữ liệu Cấu trúc dữ liệu Bài toán và thuật toánCHƯƠNG I:THUẬT TOÁN VÀ PHÂN TÍCH THUẬT TOÁN1. Giải bài toán trên máy tínhBước 1. Xác định bài toán: Xác định tập Input và OutputBước 2. Lựa chọn hoặc thiết kế thuật toán a) Lựa chọn hoặc thiết kế thuật toán – Giải bài toán nhiều thuật toán – Không gian ? – Thời gian ?; – Cài đặt ?CHƯƠNG I:TOÁN VÀ PHÂN TÍCH THUẬT TOÁN1. Giải bài toán trên máy tính b) Mô tả thuật toán • Input: Hai số nguyên dương a và b; • Output: q và r : a= bq+r. • Ý tưởng: - Nếu a < b thì q = 0 và r = a. Kết thúc. - Nếu a > b thì a giảm đi b và q tăng lên 1. L ặp cho đến khi a < b.CHƯƠNG I:THUẬT TOÁN VÀ PHÂN TÍCH THUẬT TOÁN1. Giải bài toán trên máy tính*) Cách liệt kê *) Sơ đồ khốiB1: Nhập a và b;B2: q ⇐ 0;B3: Nếu a < b thì r ⇐ a rồi chuyển đến B5;B4: a ⇐ a - b, q ⇐ q + 1 rồi quay về B3;B5: Đưa ra r và q. Kết thúc.CHƯƠNG I:THUẬT TOÁN VÀ PHÂN TÍCH THUẬT TOÁN1. Giải bài toán trên máy tính Uses Crt; Uses Crt; Var a, b, q, r: integer; Var a, b, q, r: integer; BeginBước 3. Viết chương Begin Clrscr; Clrscr; trình: Writeln (‘Chuong trinh chia Euclid’); Writeln (‘Chuong trinh chia Euclid’); Write (‘Nhap so a: ’); Write (‘Nhap so a: ’); Chọn CTDL; Readln (a); Readln (a); Write (‘Nhap so b: ’); Write (‘Nhap so b: ’); Ngôn ngữ lập trình Readln (b); Readln (b); q:=0; q:=0; While aa >= b Do While >= b Do Begin BeginBước 4. Hiệu chỉnh: Dec(a,b); Dec(a,b); Inc(q); Inc(q); Xây dựng các bộ input End; End; r:= a; r:= a; (test) tiêu biểu; Writeln (‘Thuong qq = ’, q); Writeln (‘Thuong = ’, q); Writeln (‘Phan du r r = ’, r); Writeln (‘Phan du = ’, r); Chạy thử. Readln; Readln; End. End.CHƯƠNG I:THUẬT TOÁN VÀ PHÂN TÍCH THUẬT TOÁN1. Giải bài toán trên máy tínhBước 5. Viết tài liệu: Hướng dẫn sử dụng; Thuật toán, Cấu trúc dữ liệu; …….CHƯƠNG I:THUẬT TOÁN VÀ PHÂN TÍCH THUẬT TOÁN2. Mô hình dữ liệu (Data model) Là các trừu tượng :đồ thị, tập hợp, danh sách, cây... Hai khía cạnh: – Giá trị (kiểu dữ liệu) – Các phép toán ( operation) Chương trình có thể truy xuất đến các vùng lưu trữ.CHƯƠNG I:THUẬT TOÁN VÀ PHÂN TÍCH THUẬT TOÁN3. Cấu trúc dữ liệu (Data structures) Là các đơn vị cấu trúc (construct) của NNLT dùng để biểu diễn các mô hình dữ liệuVí dụ: mảng, bản gi, file,xâu,..CHƯƠNG I:THUẬT TOÁN VÀ PHÂN TÍCH THUẬT TOÁN4. Bài toán và thuật toán4.1. Bài toán Xác định rõ Input và OutputVí dụ:Kiểm tra xem N có phải là số nguyên tố haykhông?- Input : Số nguyên dương N- Output : Trả lời N là số nguyên tố hay không?CHƯƠNG I:THUẬT TOÁN VÀ PHÂN TÍCH THUẬT TOÁN4. Bài toán và thuật toán4.2. Thuật toán Thuật toán để giải một bài toán là mộtdãy hữu hạn các thao tác đươc sắp xếptheo một trật tự xác định sao cho sau khithực hiện dãy thao tác đó, từ Input c ủabài toán này, ta nhận được Output cầ ...
Tìm kiếm theo từ khóa liên quan:
Bài giảng Cấu trúc dữ liệu Phân tích thuật toán Dữ liệu có cấu trúc Danh sách dữ liệu Thiết kế thuật toán Quản trị cơ sở dữ liệuGợi ý tài liệu liên quan:
-
Đề cương chi tiết học phần Quản trị cơ sở dữ liệu (Database Management Systems - DBMS)
14 trang 248 0 0 -
Bài giảng chuyên đề Phân tích và thiết kế thuật toán: Chia để trị
27 trang 228 0 0 -
Tiểu luận ngành Khoa học máy tính: Thiết kế và phân tích thuật toán
36 trang 121 0 0 -
Bài giảng Phân tích thiết kế thuật toán: Chương 3 - Nguyễn Văn Linh
87 trang 110 0 0 -
Giáo trình: Hệ quản trị cơ sở dữ liệu - Nguyễn Trần Quốc Vinh
217 trang 78 0 0 -
Tiểu Luận Chương Trình Quản Lí Học Phí Trường THPT
18 trang 75 0 0 -
Bài giảng Cấu trúc dữ liệu và thuật toán: Chương 3 - Một số mô hình thuật toán
42 trang 74 0 0 -
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 2 - Ngô Công Thắng
8 trang 66 0 0 -
8 trang 66 0 0
-
183 trang 52 0 0