我有一個家庭作業,按升序排列數組。顯然,這是要手動完成的,而不使用任何種類的sort()
函數。按升序手動對數組進行排序
我想這樣做,我需要兩個for
循環:第一個循環遍歷現有的數組,並創建一個臨時值與數組的值和索引。第二個循環會將臨時值與現有值進行比較並對它們進行排序。我一直試圖編寫代碼,但我似乎無法做到。這裏是我想出了最新的方法:
public int[] sortArray (int[] inArray)
{
//Construct the array we're using here
int[] newArray = inArray;
for(int x = 0; x < a.length; x++) //a.length = # of indices in the array
{
int tempValue = a[x];
int tempIndex = x;
for(int y = 0; y < a.length; y++)
{
if(tempValue < a[y])
{
newArray[x] = tempValue;
}
}
}
return newArray;
}
我敢肯定,這是不正確的,但如果有人可以把我在正確的方向,將不勝感激!
這可能是值得你首先看不同的排序算法的一些僞代碼:http://maven.smith.edu/~thiebaut/java/sort/ – Magrangs 2012-03-29 14:45:19
你應該使用某種排序算法? – twain249 2012-03-29 14:46:11
除非明確要求您考慮排序算法,否則我建議您找到一個簡單的排序算法並在代碼中實現它。而不是「確定」你的代碼不正確,只需測試一下並找出答案。 – alexis 2012-03-29 14:46:14