常用排序之选择排序

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了常用排序之选择排序相关的知识,希望对你有一定的参考价值。

算法简介:

      选择排序就是每一趟选择最小或者最大的数,然后与起始位置进行交换。

 

实现思路:

      1、从第一个数开始,找到最小或者最大的数,与第一个数进行交换。

                 2、从剩余未排序元素中继续寻找最小(大)元素,然后与第二个元素进行交换。

      3、以此类推,直到所有元素均排序完毕。

 

JAVA算法实现:

public class Simple_Selection_Sort{
	
	public static void sort(int[] obj){
		for(int i=0;i<obj.length;i++){
			obj[i] = findMin(obj,i);
		}
	}
	
	//从起始位置开始找到最小的数,然后与起始位置的数进行交换。
	public static int findMin(int[] a,int start) {	
			int min = a[start];
			for(int j=start+1;j<a.length;j++){
				if(a[j]<min){
					int temp = min;
					min = a[j];
					a[j] = temp;
				}
			}
		return min;
	}
	
	public static void main(String[] args){
		int[] a = {1,4,2,5,6,3,7,8,21};
		sort(a);
		for(int m:a){
			System.out.print(m+" ");
		}
	}

}

  

 

以上是关于常用排序之选择排序的主要内容,如果未能解决你的问题,请参考以下文章

常用排序算法之冒泡排序选择排序

常用排序之选择排序

c语言之插入排序选择 排序

算法之常用排序:冒泡排序选择排序

常用排序之选择排序

常用排序算法之插入排序