Tôi đang cố gắng hiểu rõ hơn về đệ quy và cách báo cáo trả về hoạt động. Như vậy, tôi đang xem xét một đoạn mã có nghĩa là để xác định số lượng mã số liên kết với một thuật ngữ nhất định - trong trường hợp này, 4. Tôi gặp khó khăn khi hiểu được câu lệnh khác.Hiểu đệ quy với Fibonacci Series
def f(n):
if n == 0:
return 0
if n == 1:
return 1
else:
return f(n-1) + f(n-2)
f(4)
Tôi đã thử sử dụng Visualize Python để kiểm tra những gì xảy ra ở mỗi bước, nhưng tôi bị lạc khi nó chạm vào câu lệnh khác.
Có vẻ như nó đang lấy giá trị của n và trừ 1, để tạo giá trị n mới 3 mà nó trả về định nghĩa hàm. Vì vậy, nó dường như chỉ trả về giá trị từ hàm đầu tiên trong câu lệnh khác. Tuy nhiên, câu lệnh khác được viết để trả về tổng của 2 hàm f (n-1) + f (n-2), trong trường hợp nào tôi nghĩ giá trị trả về sẽ là 5? Thậm chí bạn có thể thêm 2 chức năng cùng nhau không?
Cảm ơn trước sự giúp đỡ của bạn.
Đây là một liên kết đến mã trong Hình dung Python Sum of 2 functions
Nó không thêm hai chức năng, đó là thêm các số nguyên được trả về bởi hai cuộc gọi đến một hàm. Mỗi cuộc gọi hoàn toàn độc lập, đặc biệt mỗi cuộc gọi có giá trị riêng của nó cho 'n'. – jasonharper