这段选择排序代码哪里出错了?求助。

import java.util.Scanner;

public class SelectionSort {

	public static int[] SelectionTest(int[] a){
		for(int i = 0;i<a.length-1;i++){
			int min = a[i];
			int Index = 0;
			
			for(int j=i+1;j<a.length;j++){
			if(min>a[j]){
				min= a[j];
				Index= j;
			}
			}
			a[Index]=a[i];
			a[i]=min;
			
		}
		return a;
	}
	public static void main(String[] args){
		Scanner input= new Scanner(System.in);
		System.out.println("please enter in ...");
		
		int [] array = new int [10];
		for(int i = 0;i<array.length;i++){
			array[i]=input.nextInt();
		}
	int[] a=SelectionTest(array);
	for(int i = 0;i<array.length;i++){
	System.out.println(array[i]);	
	}
	}
}


比较小的小吉他
浏览 1188回答 2
2回答

慕粉4067798

public static int[] SelectionTest(int[] a){        for(int i = 0;i<a.length-1;i++){            int min = a[i];            int Index = 0;//1            *            *            a[Index]=a[i];//2            a[i]=min;            错误在//1这里,如果这层循环没有比a[i]小的,那么最后就会让//2处的a[index]=a[i],            也就是a[0]=a[i]            }
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java