Bài giảng Hệ thống máy tính và ngôn ngữ C: Chương 14 - TS. Nguyễn Phúc Khải
Số trang: 8
Loại file: pdf
Dung lượng: 667.57 KB
Lượt xem: 9
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Bài giảng Hệ thống máy tính và ngôn ngữ C - Chương 14: Đệ quy, được biên soạn gồm các nội dung chính sau: Đệ quy là gì?; Đệ quy và lặp; Tháp Hà nội; Dãy số Fibonacci; Tìm kiếm nhị phân; Chuyển số nguyên sang dãy ký tự ASCII; Cấu trúc dữ liệu cây – cây nhị phân. Mời các bạn cùng tham khảo!
Nội dung trích xuất từ tài liệu:
Bài giảng Hệ thống máy tính và ngôn ngữ C: Chương 14 - TS. Nguyễn Phúc Khải om .c ng co an th o ng du ucu Company LOGO 1CuuDuongThanCong.com https://fb.com/tailieudientucntt Các nội dung: Đệ quy là gì? om .c Đệ quy và lặp ng Tháp Hà nội co Dãy số Fibonacci an Tìm kiếm nhị phân th o ng Chuyển số nguyên sang dãy ký tự ASCII du u Cấu trúc dữ liệu cây – cây nhị phân cu CuuDuongThanCong.com © TS. Nguyễn Phúc Khải https://fb.com/tailieudientucntt 2 Đệ quy là gì? n Ví dụ 18.1: Tính tổng i om 1 .c int RunningSum(int n) ng { co if (n == 1) an return 1; else th ng return n + RunningSum(n-1); o du } u cu CuuDuongThanCong.com © TS. Nguyễn Phúc Khải https://fb.com/tailieudientucntt 3 ĐỆ QUY VÀ LẶP Tất cả các hàm đệ quy đều có thể được viết om bằng vòng lặp. .c ng Việc sử dụng đệ quy sẽ dễ dàng và trong co sáng hơn khi dùng vòng lặp. an th Bản đệ quy tương đối chậm vì các hàm đệ quy ng chịu sự gọi hàm còn vòng lặp thì không. o du u cu CuuDuongThanCong.com © TS. Nguyễn Phúc Khải https://fb.com/tailieudientucntt 4 THÁP HÀ NỘI Bài toán: một nền có ba cột, một trong ba cột có các om đĩa gỗ sắp theo thứ tự đĩa nhỏ ở trên đĩa lớn ở dưới. .c Chúng ta phải chuyển tất cả các đĩa từ cột hiện thời ng co qua một trong hai cột kia theo hai luật sau: mỗi lần an chỉ được di chuyển một đĩa và đĩa lớn không được đặt th trên đĩa nhỏ. ng o du u cu CuuDuongThanCong.com © TS. Nguyễn Phúc Khải https://fb.com/tailieudientucntt 5 DÃY SỐ FIBONACCI om Ta có phương trình toán truy hồi sau .c f (n) = f (n - 1) + f (n - 2) ng co f (1) = 1 an f (0) = 1 th o ng hàm đệ quy để tính số Fibonacci thứ n là phương du u ...
Nội dung trích xuất từ tài liệu:
Bài giảng Hệ thống máy tính và ngôn ngữ C: Chương 14 - TS. Nguyễn Phúc Khải om .c ng co an th o ng du ucu Company LOGO 1CuuDuongThanCong.com https://fb.com/tailieudientucntt Các nội dung: Đệ quy là gì? om .c Đệ quy và lặp ng Tháp Hà nội co Dãy số Fibonacci an Tìm kiếm nhị phân th o ng Chuyển số nguyên sang dãy ký tự ASCII du u Cấu trúc dữ liệu cây – cây nhị phân cu CuuDuongThanCong.com © TS. Nguyễn Phúc Khải https://fb.com/tailieudientucntt 2 Đệ quy là gì? n Ví dụ 18.1: Tính tổng i om 1 .c int RunningSum(int n) ng { co if (n == 1) an return 1; else th ng return n + RunningSum(n-1); o du } u cu CuuDuongThanCong.com © TS. Nguyễn Phúc Khải https://fb.com/tailieudientucntt 3 ĐỆ QUY VÀ LẶP Tất cả các hàm đệ quy đều có thể được viết om bằng vòng lặp. .c ng Việc sử dụng đệ quy sẽ dễ dàng và trong co sáng hơn khi dùng vòng lặp. an th Bản đệ quy tương đối chậm vì các hàm đệ quy ng chịu sự gọi hàm còn vòng lặp thì không. o du u cu CuuDuongThanCong.com © TS. Nguyễn Phúc Khải https://fb.com/tailieudientucntt 4 THÁP HÀ NỘI Bài toán: một nền có ba cột, một trong ba cột có các om đĩa gỗ sắp theo thứ tự đĩa nhỏ ở trên đĩa lớn ở dưới. .c Chúng ta phải chuyển tất cả các đĩa từ cột hiện thời ng co qua một trong hai cột kia theo hai luật sau: mỗi lần an chỉ được di chuyển một đĩa và đĩa lớn không được đặt th trên đĩa nhỏ. ng o du u cu CuuDuongThanCong.com © TS. Nguyễn Phúc Khải https://fb.com/tailieudientucntt 5 DÃY SỐ FIBONACCI om Ta có phương trình toán truy hồi sau .c f (n) = f (n - 1) + f (n - 2) ng co f (1) = 1 an f (0) = 1 th o ng hàm đệ quy để tính số Fibonacci thứ n là phương du u ...
Tìm kiếm theo từ khóa liên quan:
Bài giảng Hệ thống máy tính Ngôn ngữ C Hệ thống máy tính Tìm kiếm nhị phân Đệ quy Cấu trúc dữ liệu câyGợi ý tài liệu liên quan:
-
Giáo trình Lập trình cơ bản với C++ - Phan 2
69 trang 179 0 0 -
Bài giảng Nguyên lý hệ điều hành (Bài giảng tuần 1) - Nguyễn Hải Châu
6 trang 165 0 0 -
6 trang 154 0 0
-
Tìm hiểu về ngôn ngữ lập trình C: Phần 1 - Quách Tuấn Ngọc
211 trang 146 0 0 -
Giáo trình Lập trình C căn bản - HanoiAptech Computer Education Center
136 trang 117 0 0 -
Tài liệu tham khảo: Cấu trúc dữ liệu và giải thuật
229 trang 103 0 0 -
Giáo trình Tin học đại cương: Phần 2 - Trần Đình Khang
118 trang 96 0 0 -
101 thuật toán chương trình C: Phần 2
130 trang 84 0 0 -
91 trang 81 0 0
-
Đề tài: TÌM HIỂU VÀ THIẾT KẾ MẠNG LAN CHO TRƯỜNG THPT PHỤC HÒA
68 trang 75 0 0