Bài giảng Cấu trúc dữ liệu và thuật toán - Chương 2: Hàm - đệ quy (function - recursion)
Số trang: 65
Loại file: pdf
Dung lượng: 705.68 KB
Lượt xem: 10
Lượt tải: 0
Xem trước 7 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Nội dung chính của chương 2 Hàm - đệ quy nằm trong bài giảng cấu trúc dữ liệu và thuật toán nhằm trình bày về các nội dung chính như sau: hàm, khái niệm ngăn xếp, quá trình thực thi hàm, tham số hàm, biến toàn cục (global) và cục bộ (local) đệ quy, các loại đệ quy.
Nội dung trích xuất từ tài liệu:
Bài giảng Cấu trúc dữ liệu và thuật toán - Chương 2: Hàm - đệ quy (function - recursion)Chương 2:HÀM - ĐỆ QUY(Function - Recursion)NỘI DUNG1. Hàm (function)2. Khái niệm ngăn xếp (stack)3. Quá trình thực thi hàm4. Tham số hàm5. Biến toàn cục (global) và cục bộ (local)6. Đệ quy (recursion)7. Các loại đệ quy (types of recursion) 2 1. Hàm khả năng lập trình theo modul chia nhỏ thao tác tránh lặp lại một thao tác #include int add (int x, int y) { int z; z = x + y; return (z); } void main () { int i, j, k; i = 10; j = 20; k = add(i, j); coutNỘI DUNG1. Hàm (function)2. Khái niệm ngăn xếp (stack)3. Quá trình thực thi hàm4. Tham số hàm5. Biến toàn cục (global) và cục bộ (local)6. Đệ quy (recursion)7. Các loại đệ quy (types of recursion) 4 2. Khái niệm ngăn xếp (stack) Stack là phần bộ nhớ mà trong đó các giá trị của nó được lưu vào (Push) và lấy ra (Pop) theo kiểu “last in first out” 5Chương 2: Hàm – Đệ quyNỘI DUNG1. Hàm (function)2. Khái niệm ngăn xếp (stack)3. Quá trình thực thi hàm4. Tham số hàm5. Biến toàn cục (global) và cục bộ (local)6. Đệ quy (recursion)7. Các loại đệ quy (types of recursion) 6 3. Quá trình thực thi hàm Khi hàm được gọi, vị trí lệnh hiện tại sẽ tạm thời bị dừng và điều khiển sẽ chạy đến hàm được gọi Sau khi hàm được thực thi xong, điều khiển sẽ quay trở về vị trí đã bị dừng tạm thời để thi hành tiếp Để biết được chính xác vị trí để quay trở về, máy tính sẽ lưu địa chỉ của lệnh kế tiếp lúc bị dừng vào stack → Như vậy: ◦ Trước khi thực thi hàm, máy tính sẽ lưu (Push) địa chỉ lệnh kế tiếp vào stack ◦ Khi hàm được thực thi xong, máy tính sẽ lấy (Pop) địa chỉ đó ra để thực hiện tiếp 7Chương 2: Hàm – Đệ quy 3. Quá trình thực thi hàm 1 2 3 4 5 6 7 8 9 10 Kết quả??? 11 12 13 14 15 16 17 18 19 20 8 21Chương 2: Hàm – Đệ quyNỘI DUNG1. Hàm (function)2. Khái niệm ngăn xếp (stack)3. Quá trình thực thi hàm4. Tham số hàm5. Biến toàn cục (global) và cục bộ (local)6. Đệ quy (recursion)7. Các loại đệ quy (types of recursion) 9 4. Tham số hàm 1. Tham số hàm là tham trị (value): giá trị tham số truyền trước và sau khi gọi hàm là như nhau 2. Tham số hàm là tham chiếu (reference): giá trị tham số truyền sẽ được thay đổi sau khi gọi hàm 10Chương 2: Hàm – Đệ quy 4. Tham số hàmvoid f1 (int k) void f1 (int &k){ { k = k + 10; k = k + 10;} }void main( ) void main( ){ { int i; int i; i = 0; i = 0; coutNỘI DUNG1. Hàm (function)2. Khái niệm ngăn xếp (stack)3. Quá trình thực thi hàm4. Tham số hàm5. Biến toàn cục (global) và cục bộ (local)6. Đệ quy (recursion)7. Các loại đệ quy (types of recursion) 12 5. Biến toàn cục và cục bộ #include int i =0; // Global variable void f1() { ...
Nội dung trích xuất từ tài liệu:
Bài giảng Cấu trúc dữ liệu và thuật toán - Chương 2: Hàm - đệ quy (function - recursion)Chương 2:HÀM - ĐỆ QUY(Function - Recursion)NỘI DUNG1. Hàm (function)2. Khái niệm ngăn xếp (stack)3. Quá trình thực thi hàm4. Tham số hàm5. Biến toàn cục (global) và cục bộ (local)6. Đệ quy (recursion)7. Các loại đệ quy (types of recursion) 2 1. Hàm khả năng lập trình theo modul chia nhỏ thao tác tránh lặp lại một thao tác #include int add (int x, int y) { int z; z = x + y; return (z); } void main () { int i, j, k; i = 10; j = 20; k = add(i, j); coutNỘI DUNG1. Hàm (function)2. Khái niệm ngăn xếp (stack)3. Quá trình thực thi hàm4. Tham số hàm5. Biến toàn cục (global) và cục bộ (local)6. Đệ quy (recursion)7. Các loại đệ quy (types of recursion) 4 2. Khái niệm ngăn xếp (stack) Stack là phần bộ nhớ mà trong đó các giá trị của nó được lưu vào (Push) và lấy ra (Pop) theo kiểu “last in first out” 5Chương 2: Hàm – Đệ quyNỘI DUNG1. Hàm (function)2. Khái niệm ngăn xếp (stack)3. Quá trình thực thi hàm4. Tham số hàm5. Biến toàn cục (global) và cục bộ (local)6. Đệ quy (recursion)7. Các loại đệ quy (types of recursion) 6 3. Quá trình thực thi hàm Khi hàm được gọi, vị trí lệnh hiện tại sẽ tạm thời bị dừng và điều khiển sẽ chạy đến hàm được gọi Sau khi hàm được thực thi xong, điều khiển sẽ quay trở về vị trí đã bị dừng tạm thời để thi hành tiếp Để biết được chính xác vị trí để quay trở về, máy tính sẽ lưu địa chỉ của lệnh kế tiếp lúc bị dừng vào stack → Như vậy: ◦ Trước khi thực thi hàm, máy tính sẽ lưu (Push) địa chỉ lệnh kế tiếp vào stack ◦ Khi hàm được thực thi xong, máy tính sẽ lấy (Pop) địa chỉ đó ra để thực hiện tiếp 7Chương 2: Hàm – Đệ quy 3. Quá trình thực thi hàm 1 2 3 4 5 6 7 8 9 10 Kết quả??? 11 12 13 14 15 16 17 18 19 20 8 21Chương 2: Hàm – Đệ quyNỘI DUNG1. Hàm (function)2. Khái niệm ngăn xếp (stack)3. Quá trình thực thi hàm4. Tham số hàm5. Biến toàn cục (global) và cục bộ (local)6. Đệ quy (recursion)7. Các loại đệ quy (types of recursion) 9 4. Tham số hàm 1. Tham số hàm là tham trị (value): giá trị tham số truyền trước và sau khi gọi hàm là như nhau 2. Tham số hàm là tham chiếu (reference): giá trị tham số truyền sẽ được thay đổi sau khi gọi hàm 10Chương 2: Hàm – Đệ quy 4. Tham số hàmvoid f1 (int k) void f1 (int &k){ { k = k + 10; k = k + 10;} }void main( ) void main( ){ { int i; int i; i = 0; i = 0; coutNỘI DUNG1. Hàm (function)2. Khái niệm ngăn xếp (stack)3. Quá trình thực thi hàm4. Tham số hàm5. Biến toàn cục (global) và cục bộ (local)6. Đệ quy (recursion)7. Các loại đệ quy (types of recursion) 12 5. Biến toàn cục và cục bộ #include int i =0; // Global variable void f1() { ...
Tìm kiếm theo từ khóa liên quan:
Biến toàn cục Thực thi hàm Tham số hàm Cấu trúc dữ liệu Cấu trúc giải thuật Thành phần dữ liệuGợi ý tài liệu liên quan:
-
Đề cương chi tiết học phần Cấu trúc dữ liệu và giải thuật (Data structures and algorithms)
10 trang 301 0 0 -
Bài giảng Phân tích thiết kế phần mềm: Chương 1 - Trường ĐH Ngoại ngữ - Tin học TP.HCM
64 trang 145 0 0 -
Giải thuật và cấu trúc dữ liệu
305 trang 139 0 0 -
Tập bài giảng Thực hành kỹ thuật lập trình
303 trang 136 0 0 -
Giáo trình Cấu trúc dữ liệu và thuật toán (Tái bản): Phần 1
152 trang 135 0 0 -
Tài liệu tham khảo: Cấu trúc dữ liệu và giải thuật
229 trang 99 0 0 -
Thiết kế hệ thống thông tin - Tổng quan hệ thống thông tin
86 trang 86 0 0 -
Lập trình C - Cấu trúc dữ Liệu
307 trang 70 0 0 -
49 trang 66 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 63 0 0