Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 13 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
13
Dung lượng
451,05 KB
Nội dung
04/10/2014 BÀI 11 THUẬT TOÁN ĐỆ QUY Nội dung • Thuật toán đệ quy hàm đệ quy gì? • Thuật tốn đệ quy hoạt động nào? • Một số thuật tốn đệ quy đơn giản 04/10/2014 THUẬT TỐN ĐỆ QUY LÀ GÌ? Khái niệm “đệ quy” Droste effect Sierpinksi triangle • Đối tượng đệ quy: đối tượng mà phần tồn đối tượng định nghĩa thơng qua • Quy nạp tốn học • Q trình đệ quy: q trình mà phần tồn trình tự lặp lại theo cách 04/10/2014 Đệ quy – Ví dụ • Định nghĩa số tự nhiên: • số tự nhiên • n số tự nhiên n-1 số tự nhiên • Dãy số: • Dãy số số • Dãy số số sau dãy số • Một số thuật ngữ: • PHP = PHP: Hypertext Preprocessor • GNU = GNU’s Not Unix Thuật tốn đệ quy • Thuật tốn đệ quy thuật toán mà bước thực tự thực lại với đầu vào nhỏ hơn(kích thước, giá trị, mức độ phức tạp…) • Tư tưởng thuật toán đệ quy đưa toán cần giải toán đồng dạng mức độ thấp Ví dụ: Tính dãy số Fibonacci, n! • Tại dùng đệ quy: • Một số thuật tốn cách thức thực có tính đệ quy • Một số thuật tốn khó tìm lời giải sử dụng kỹ thuật đệ quy để giải Ví dụ: Bài tốn tháp Hà Nội • 04/10/2014 Thuật tốn đệ quy(tiếp) • Để xây dựng thuật toán đệ quy, cần xác định: • Trường hợp bản: (Các) trường hợp khơng cần thực lại thuật tốn, xác định kết đầu • Phần tổng quát: Có u cầu gọi đệ quy • Cần xác định nguyên lý đưa trường hợp tổng quát trường hợp • Đảm bảo tính dừng giải thuật đệ quy - chắn từ trường hợp tổng quát đến trường hợp • Hàm/Phương thức đệ quy: Hàm/Phương thức có lời gọi tới Các thức hoạt động thuật toán đệ quy • Để hiểu thức thực thuật toán đệ quy, xem xét ví dụ tính n! sau != × 1, =0 − × ⋯ × × 1, >0 != 1, =0 × − !, > Sử dụng vòng lặp Sử dụng đệ quy int fact(int n) { int result = 1; for (int i=1;i int fib(int n) { if (n a[mid]) return binarySearch(a, x, mid + 1, high); else if (x < a[mid]) return binarySearch(a, x, low, mid - 1); else return mid; // Base case 2: item found } 24 12 04/10/2014 Bài tập Sử dụng thuật toán đệ quy để thực phương thức sau: • Tìm UCLN số • Tính tổ hợp chập k n Ckn 25 Tài liệu tham khảo • Bài giảng sử dụng hình ảnh mã nguồn minh họa từ giảng Đại học QG Singapore (NUS) 26 13 ... THUẬT TỐN ĐỆ QUY LÀ GÌ? Khái niệm “đệ quy Droste effect Sierpinksi triangle • Đối tượng đệ quy: đối tượng mà phần toàn đối tượng định nghĩa thơng qua • Quy nạp tốn học • Q trình đệ quy: q trình... dùng đệ quy: • Một số thuật tốn cách thức thực có tính đệ quy • Một số thuật tốn khó tìm lời giải sử dụng kỹ thuật đệ quy để giải Ví dụ: Bài tốn tháp Hà Nội • 04/10/2014 Thuật toán đệ quy( tiếp)... thuật đệ quy - chắn từ trường hợp tổng quát đến trường hợp • Hàm/Phương thức đệ quy: Hàm/Phương thức có lời gọi tới Các thức hoạt động thuật tốn đệ quy • Để hiểu thức thực thuật toán đệ quy, xem