Truyền thuyết Tháp Hà Nội nói 64 đĩa cần 2⁶⁴−1 nước đi, hơn 18 tỉ tỉ lần nhấc đĩa, vậy mà toàn bộ lời giải gói trong một câu tự gọi lại chính nó: chuyển n−1 đĩa sang cọc phụ, dời đĩa đáy, rồi lặp lại. Mỗi lời gọi chiếm một khung trên ngăn xếp và ngăn xếp thì hữu hạn, thiếu trường hợp cơ sở là tràn. Hàm Fibonacci ngây thơ rẽ hai nhánh mỗi tầng nên cùng một fib(k) bị tính đi tính lại theo cấp số nhân; khi kết quả được ghi nhớ, các nhánh trùng bị cắt cụt và cây gọi xẹp về gần như tuyến tính.
Truyền thuyết Tháp Hà Nội nói 64 đĩa cần 2⁶⁴−1 nước đi, hơn 18 tỉ tỉ lần nhấc đĩa, vậy mà toàn bộ lời giải gói trong một câu tự gọi lại chính nó: chuyển n−1 đĩa sang cọc phụ, dời đĩa đáy, rồi lặp lại. Mỗi lời gọi chiếm một khung trên ngăn xếp và ngăn xếp thì hữu hạn, thiếu trường hợp cơ sở là tràn. Hàm Fibonacci ngây thơ rẽ hai nhánh mỗi tầng nên cùng một fib(k) bị tính đi tính lại theo cấp số nhân; khi kết quả được ghi nhớ, các nhánh trùng bị cắt cụt và cây gọi xẹp về gần như tuyến tính.
Chủ đề liên quan trong Tư duy & Máy