Dãy Fibonacci trong Cấu trúc dữ liệu và giải thuật

Dãy Fibonacci là gì?

Dãy Fibonacci tạo dãy các số bằng cách cộng hai số đằng trước. Dãy Fibonacci bắt đầu từ hai số: F0 & F1. Giá trị ban đầu của F0 & F1 có thể tương ứng là 0, 1 hoặc 1, 1.

Điều kiện của dãy Fibonacci là:

Fn = Fn-1 + Fn-2

Ví dụ một dãy Fibonacci:

F8 = 0 1 1 2 3 5 8 13

Ví dụ một dãy Fibonacci khác:

F8 = 1 1 2 3 5 8 13 21

Dưới đây là phần minh họa cho dãy Fibonacci trên:

Sơ đồ dãy Fibonacci

Giải thuật sử dụng vòng lặp cho dãy Fibonacci

Đầu tiên, giải thuật của chúng ta sẽ sử dụng vòng lặp để tạo dãy Fibonacci:

Bt đầu gii thut Fibonacci(n)
   khai báo f0, f1, fib, loop 
   
   Thiết lp f0 là 0
   Thiết lp f1 là 1
   
   hin th f0, f1
   
   for loop  1 ti n
   
      fib  f0 + f1   
      f0  f1
      f1  fib

      hin th dãy fib
   kết thúc for
	
Kết thúc gii thut

Giải thuật sử dụng đệ qui cho dãy Fibonacci

Tiếp theo, dựa vào đệ qui chúng ta sẽ thiết kế giải thuật cho dãy Fibonacci như sau:

Bt đầu gii thut Fibonacci(n)
   khai báo f0, f1, fib, loop 
   
   Thiết lp f0 là 0
   Thiết lp f1 là 1
   
   hin th f0, f1
   
   for loop  1 ti n
   
      fib  f0 + f1   
      f0  f1
      f1  fib

      hin th dãy fib
   kết thúc for

Kết thúc gii thut

Theo Tutorialspoint

Bài trước: Bài toán Tháp Hà Nội (Tower of Hanoi)

Bài tiếp: assert.h trong C

Thứ Sáu, 17/08/2018 09:33
53 👨 5.145
Xác thực tài khoản!

Theo Nghị định 147/2024/ND-CP, bạn cần xác thực tài khoản trước khi sử dụng tính năng này. Chúng tôi sẽ gửi mã xác thực qua SMS hoặc Zalo tới số điện thoại mà bạn nhập dưới đây:

Số điện thoại chưa đúng định dạng!
Số điện thoại này đã được xác thực!
Bạn có thể dùng Sđt này đăng nhập tại đây!
Lỗi gửi SMS, liên hệ Admin
0 Bình luận
Sắp xếp theo
❖
    Chia sẻ
    Chia sẻ FacebookChia sẻ Twitter
    Đóng