Bài giảng Ngôn ngữ lập trình: Bài 10 do Nguyễn Xuân Hùng biên soạn giúp người học hiểu về "Đệ quy". Nội dung trình bày cụ thể gồm có: Tìm hiểu về đề quy, các loại đệ quy, bài tập,.! | NGÔN NGỮ LẬP TRÌNH Bài 10: ĐỆ QUY (Chương 13) Giảng viên: Nguyễn Xuân Hùng Mobile: 0908 386 366 Email: nguyenxuanhung@ Nguyễn Xuân Hùng – Khoa CNTT – Trường Đại học Thủy Lợi Nội dung Tìm hiểu về đề quy Các loại đệ quy Bài tập 1. Đệ quy (Recursion) Là một phương pháp lập trình cho phép một hàm có thể gọi lại chính nó trực tiếp hoặc gián tiếp. Ví dụ: void Test() { Test(); } Một chương trình đệ quy hoặc một định nghĩa đệ quy thì không thể gọi đến chính nó mãi mãi mà phải có một điểm dừng đến một trường hợp đặc biệt nào đó, mà ta gọi là trường hợp suy biến (degenerate case). Ví dụ: Ta định nghĩa n! như sau: 3 n * (n - 1)! n! 0! 1 1. Đệ quy (Recursion) Phương pháp thiết kế một giải thuật đệ quy: Phân tích trường hợp chung : đưa bài toán dưới dạng bài toán cùng loại nhưng có phạm vi giải quyết nhỏ hơn theo nghiã dần dần sẽ tiến đến trường hợp suy biến 4 Tham số hoá bài toán Tìm trường hợp suy biến 1. Đệ quy (Recursion) Chương trình đệ quy gồm hai phần chính: 1. 2. 5 Phần cơ sở: Điều kiện thoát khỏi đệ quy (điểm dừng) Phần đệ quy: Trong phần thân chương trình có lời gọi đến chính bản thân chương trình với giá trị mới của tham số nhỏ hơn giá trị ban .