Re: [問題] array 長度

看板Programming作者 (可愛小孩子)時間7年前 (2017/07/18 15:37), 編輯推噓1(101)
留言2則, 2人參與, 最新討論串2/2 (看更多)
Recursive 改寫的部份如下: private static int length(int [] s, int x) { //WRITE CODE HERE int len; int tmp; if (s[x] == x) { return 0; } tmp = s[x]; s[x] = s[tmp]; len = length(s, x) + 1; s[x] = tmp; return len; } ※ 引述《kasey ( )》之銘言: : 大家好,我初學Java沒多久,最近遇到一個問題。假設有一個 array 裡面的數字不重複 : ,任意給定一個數字,在不用迴圈跟 array.length() 的情形下要怎麼算此 array 的長 : 度呢?我目前是想到用 recursion ,可是我寫的結果都沒有成功 orz,麻煩各位大大解 : 惑 : 用迴圈的程式如下: : int length(int [] s, int x) : int l; : int y = x; : while (true) { : if (s[x] == y) { : return l; : } : x = s[x]; : ++l; : } : } -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 210.61.233.210 ※ 文章網址: https://www.ptt.cc/bbs/Programming/M.1500363462.A.815.html

07/19 00:14, , 1F
Wow~ 謝謝你。
07/19 00:14, 1F

07/19 09:42, , 2F
只不過 n = 5000 時, recursive 不會爆嗎
07/19 09:42, 2F
文章代碼(AID): #1PRRh6WL (Programming)
討論串 (同標題文章)
本文引述了以下文章的的內容:
2
7
完整討論串 (本文為第 2 之 2 篇):
2
7
文章代碼(AID): #1PRRh6WL (Programming)