2013-12-09 2 views
0

У меня есть этот код, и я не знаю, почему сортировка сортировки не сортируется полностью. Кто-нибудь знает, где исправить программу. Код сортировки выбора, я считаю правильным, я просто не знаю, что не так. Код функционируетJava Sorting Array

import java.util.Scanner; 

public class selectionSort 
{ 
    public static void main(String[] args) 
{ 
    Scanner scanner = new Scanner(System.in); 

    int temp; 

    int i,j,first; 



    System.out.println("How many numbers do you want to enter?"); 
    int ammount = scanner.nextInt(); 
    int[]array = new int[ammount]; 

    for (i = 0 ; i < array.length; i++) 
    { 

    System.out.println("Enter the numbers now."); 
    array[i] = scanner.nextInt(); 

    } 

    System.out.println("\nThe array is:"); 
    for(i = 0; i < array.length; i++){ 
    System.out.print(array[i] + " "); 

    } 




    for (i=array.length - 1; i>0;i--) 
    { 
    first=0; 
    for(j=1;j<=1;j++) 
    { 
     if(array[j]<array[first]) 
      first = j; 

    } 

    temp = array[first]; 

    array[first] = array[i]; 
    array[i]=temp; 

    } 


    System.out.println("\nThe sorted array is:"); 
    for(i = 0; i < array.length; i++){ 
    System.out.print(array[i] + " "); 

    } 

} 

} 

ответ

4

У вас появляется опечатка. Эта линия:

for(j=1;j<=1;j++) 

, вероятно, следует:

for(j=1;j<=i;j++) 

(Испытание прекращение цикла должно быть j<=i, не j<=1.)