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