我正在嘗試編寫賦值賦予的一些僞代碼 - 但是現在我正在執行的代碼部分不是賦值的一部分,只是爲了好玩。通過創建一種方法來簡化Java代碼......但是在哪裏?
僞代碼的一部分表示「交換數組元素」。在我的代碼中,我必須在兩個地方做到這一點。然而,我想知道是否有辦法通過創建一個方法來實現這一點,即創建另一個方法,只需交換它們,並保存每次我想運行它時使用的額外代碼行。
問題是,如果我在這個之外創建了一個全新的方法,那麼我將不得不發送數組作爲參數,並且將其作爲參數發送出去,而且我恐怕效率會降低(這裏顯然沒有什麼大不了的,但我正在努力學習未來更大的項目)。
這是我的代碼,包含重複的「交換」方法行。
public int[] myAlgorithm(int[] arrayOfInts, int size){
boolean done = true;
int j= 0;
while (j <= n-2){
if (arrayOfInts[j] > arrayOfInts[j+1]){
int tempHolder = arrayOfInts[j];
arrayOfInts[j] = arrayOfInts[j+1];
arrayOfInts[j+1] = tempHolder;
done = false;
}
j = j + 1;
}
j = size - 1;
while (j >= 1){
if (arrayOfInts[j] <= arrayOfInts[j-1]){
int tempHolder = arrayOfInts[j];
arrayOfInts[j] = arrayOfInts[j+1];
arrayOfInts[j+1] = tempHolder;
done = false;
}
j--;
}
if (!done)
myAlgorithm(arrayOfInts, size)
else
return arrayOfInts;
}
http://stackoverflow.com/questions/1363186/is-it-possible-to-write-swap-method-in-java –