จำนวนที่ Fibonacci สามารถคำนวณในเวลาเชิงเส้นโดยใช้การเกิดซ้ำดังต่อไปนี้:
def fib(n):
    i, j = 1, 1
    for k in {1...n-1}:
        i, j = j, i+j
    return i
หมายเลขที่ Fibonacci สามารถคำนวณได้ด้วย[ φ n / √. แต่นี้มีปัญหากับการปัดเศษปัญหาแม้มีขนาดค่อนข้างเล็กn อาจมีวิธีการรอบนี้แต่ฉันไม่อยากทำอย่างนั้น
มีอัลกอริทึม(ลอการิทึมในค่าหรือดีกว่า) ที่มีประสิทธิภาพเพื่อคำนวณจำนวนฟีโบนักชีที่nที่ไม่พึ่งพาเลขคณิตจุดลอยตัวหรือไม่? สมมติว่าการดำเนินการจำนวนเต็ม ( + , - , × , / ) สามารถดำเนินการได้ในเวลาคงที่