[.NET] 費氏數列(跑得很慢)
小弟正在自學asp.net2.0 ,用vb.net開發
做到一題,要我把費氏數列從1顯示到1836311903
以下是程式碼
-------------------------------------------------------------------------------
Partial Class _Default
Inherits System.Web.UI.Page
-------------------------------------------------------------------------------
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim i As Integer
Dim j As Integer = 10000000
For i = 0 To j
Response.Write(fib(i) & "、")
If fib(i) >= 1836311903 Then
Exit For
End If
Next
End Sub
-------------------------------------------------------------------------------
Function fib(ByVal x As Integer)
If x = 0 Or x = 1 Then
Return 1
Else
Return fib(x - 1) + fib(x - 2)
End If
End Function
End Class
如果是輸出到小一點的數還可以,但這題要到1836311903
我放了快一小時都還沒跑出答案
請問有比較快的解法嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.94.25
推
08/07 03:34, , 1F
08/07 03:34, 1F
推
08/07 03:54, , 2F
08/07 03:54, 2F
→
08/07 03:54, , 3F
08/07 03:54, 3F
→
08/07 14:30, , 4F
08/07 14:30, 4F
→
08/07 14:30, , 5F
08/07 14:30, 5F
→
08/07 15:30, , 6F
08/07 15:30, 6F
→
08/07 17:16, , 7F
08/07 17:16, 7F
→
08/08 14:15, , 8F
08/08 14:15, 8F
→
08/08 16:28, , 9F
08/08 16:28, 9F
→
08/08 23:11, , 10F
08/08 23:11, 10F
→
08/09 02:07, , 11F
08/09 02:07, 11F
推
08/12 20:56, , 12F
08/12 20:56, 12F
→
08/12 20:57, , 13F
08/12 20:57, 13F
→
08/12 20:57, , 14F
08/12 20:57, 14F
→
08/12 20:57, , 15F
08/12 20:57, 15F
→
08/12 20:58, , 16F
08/12 20:58, 16F
→
08/12 20:58, , 17F
08/12 20:58, 17F