`
yezixingchen
  • 浏览: 37862 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

面试常考-----选择排序法

阅读更多

排序算法思想:数组a[1...n],

(1) 假定min=a[1],a[1]与剩余其他数比较,如果比较中有比min大的数,则min改变为较小数;

(2) ......

(3)假定min=a[i],a[i]比较a[k](k>i,k<a.length),min=min{a[k],(k>i,k<a.length)}

(4) ......

 

java实现代码:

 

int a[]={49, 38, 65, 97, 76, 13, 27, 49};
		int len=a.length;
		int min;
		int temp;
		for(int i=0;i<=len-1;i++){
			min=i;
			for(int j=i;j<len;j++){
				if(a[min]>a[j]){
				min=j;
				}
			}
			temp=a[i];
			a[i]=a[min];
			a[min]=temp;
			
			
			for(int m=0;m<=len-1;m++){
				System.out.print(a[m]+"  ");
			}
			System.out.println();
		}
		for(int m=0;m<=len-1;m++){
			System.out.print(a[m]+"  ");
		}
	}

 

 

打印结果:

 

13  38  65  97  76  49  27  49 
13  27  65  97  76  49  38  49 
13  27  38  97  76  49  65  49 
13  27  38  49  76  97  65  49 
13  27  38  49  49  97  65  76 
13  27  38  49  49  65  97  76 
13  27  38  49  49  65  76  97 
13  27  38  49  49  65  76  97 
13  27  38  49  49  65  76  97 

1
1
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics