你怎么能拿一个手动输入的数组并对其进行排序?

时间:2012-04-26 21:40:52

标签: java arrays sorting input

这是我目前的代码:

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 ) 
      {

      }
}

当我手动输入数组时,我认为我遇到的问题就在某处。但我在那附近朦胧?有没有人看到问题?我将这个代码基于一个采用随机数组并对其进行排序的方法。感谢。

1 个答案:

答案 0 :(得分:0)

为什么不使用TreeMap<Integer, Integer>并继续输入值。最后使用迭代器或for each循环打印出来或稍后使用这些数字。

或者您可以使用二叉搜索树并继续将数据插入其中。最后进行有序遍历。