2012-03-16 21 views
0

在這裏,我嘗試了這個,但有錯誤,我試圖修復它。計算路徑上當前任何節點到指定節點的最大距離?

private int maxDistance(List<String> path, String node) { 

    int max = Integer.MAX_VALUE; 
    int cost = 0; 


    for (int i = 0 ; i < path.size(); i++) 
    { 
     path.add(i, node); 

     if (cost > max) 
      cost = max; 

     path.remove(i); 
    } 
    return max; 
+2

'有缺陷,somewhere'是無益。 *什麼*和*他們在哪裏? – Jon 2012-03-16 01:40:13

+0

我無法弄清楚,但沒有給出正確的結果!我想這就是我需要幫助的地方。 – 2012-03-16 01:44:12

+0

什麼是'node'?它的價值格式是什麼?什麼定義了成本? – Jon 2012-03-16 01:45:04

回答

2

沒有更改cost意味着什麼,以及max已經是最大可能值,因此您的代碼並沒有真正做任何事情:

private int maxDistance(List<String> path, String node) { 
    int max = 0, cost = 0; // Checking for a max 

    path.add(node); // You only want to do this once, so do it outside the loop 

    for(int i = 0; i < path.size(); i++) { 
    // find the cost somehow, you didn't specify what 'cost' really is 
    if(cost > max) 
     max = cost; 
    } 

    return max; 
} 
+0

感謝喬恩,終於能夠向你解釋我在做什麼,你幫了我。 – 2012-03-16 02:31:40

+0

@聖誕老人,你可以通過投票/接受表示讚賞。 – Jon 2012-03-16 02:32:45

相關問題