这是我目前的代码:
public static void main (String [] args)
{
try
{
System.out.println("Please enter the amount of numbers in the array");
int arraySize2 = keyboard.nextInt ();
System.out.println("Please enter the numbers in the array seperately.");
int[] array = new int[arraySize2];
for(int b=0; b<=arraySize2-1; b++){
array[b] = keyboard.nextInt(20);}
for (int i = 0; i < array.length -1; i++){
int minPos = i;
for (int j = i; j < array.length; j++){
if (array[j] < array[minPos])
minPos = j; }
// swaps minimum value with current location
int temp = array[i];
array[i] = array[minPos];
array[minPos] = temp; }
}
catch( ArrayIndexOutOfBoundsException e )
{
}
}
当我手动输入数组时,我认为我遇到的问题就在某处。但我在那附近朦胧?有没有人看到问题?我将这个代码基于一个采用随机数组并对其进行排序的方法。感谢。
答案 0 :(得分:0)
为什么不使用TreeMap<Integer, Integer>
并继续输入值。最后使用迭代器或for each
循环打印出来或稍后使用这些数字。
或者您可以使用二叉搜索树并继续将数据插入其中。最后进行有序遍历。