動態規劃問題請問各位神大大

看板java作者 (小本)時間9小時前 (2025/06/21 17:10), 編輯推噓0(005)
留言5則, 2人參與, 2小時前最新討論串1/1
小弟愚鈍,以下問題想問: public static int output[]=new int[1000]; public static int fib(int n){ int result; result=output[n]; if(result==0){ if(n==0) return 0; if(n==1) return 1; else: return (fib(n-1)+fib(n-2)); } output[n]=result; return result; } 想了解以上動態規劃法中,已經有return 數值,最後再return result代表? 還有當n==4時,result及output的變化? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 218.164.203.213 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/java/M.1750497045.A.A16.html

06/21 23:34, 2小時前 , 1F
因為這程式是錯的
06/21 23:34, 1F

06/21 23:35, 2小時前 , 2F
output一開始全部都是0,這程式全都return不會更新output
06/21 23:35, 2F

06/21 23:37, 2小時前 , 3F
至少else裡面return必須改成result =,或是這整個function
06/21 23:37, 3F

06/21 23:38, 2小時前 , 4F
result這變數多餘的,全換成output[n]且else用output[n] =
06/21 23:38, 4F

06/21 23:53, 2小時前 , 5F
感謝大大
06/21 23:53, 5F
文章代碼(AID): #1eLdSLeM (java)
文章代碼(AID): #1eLdSLeM (java)