入门客AI创业平台(我带你入门,你带我飞行)
博文笔记

数组-选择排序-记录下标

创建时间:2016-12-09 投稿人: 浏览次数:940

在二层循环中使用记录下标,完成一次内层循环后再进行位置的交换

因为一次外层循环一次交换一次位置效率提高

当两个下标不一样的时候交换位置,相同时不交换


public class NumSort {	
public static void main(String[] args){
	int[] a = new int[args.length];
	for(int i=0; i<args.length; i++){
		a[i] = Integer.parseInt(args[i]);			//将字符型的数组内容转化为整型的
	}
	print(a);
	selectionSort(a);
	print(a);
}

private static void selectionSort(int[] a){
	int k, temp=0;
	for(int i=0; i<a.length; i++){
		k = i;
		for(int j=k+1; j<a.length; j++){
			if(a[j] < a[k]){
				k = j;		
			}
		}
		if (k != i){
			temp = a[i];
			a[i] = a[k];
			a[k] = temp;
		}
	}
}

private static void print(int[] a){
	for(int i=0; i<a.length; i++){
		System.out.print(a[i] +" ");
	}
	System.out.println();
}

}


阅读更多
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
  • 上一篇:没有了
  • 下一篇:没有了
未上传头像