排序算法

1.选择排序

    简单的选择排序:这个排序方法的原理:假设有5个乱序的数字数组 int a[5],要将它们进行升序排序(从小到大)这个时候先假设a[0]做数组的最小值并依次与后面的数字进行比较,如果有数字比a[0]小,那么这两个数做交换。等第一轮比较完此时的a[0]就是当前数组的最小值,第二轮比较的时候只要从a[1]开始,把a[1]做数组第二小的值与后面的数字进行比较。

代码如下:

public void selectSort(int []a)

{
for(int k=0;k<a.length-1;k++)//比较的轮数{

int a[min]=a[k];// 把剩余数组第一个假定为最小值

for(int i=k+1;i<a.length;i++){

if( a[min]>a[i]){

int temp= a[min];

 a[min]=a[i];

a[i]=temp;

}
}
}

 

2.冒泡(第一轮取得最小值,第二轮取得第二小)

import java.util.Arrays;
public class HellowWorld {
public static void main(String[] argv ) {
int[] arr= new int[]{1,6,6,9,3,4,21,26,30,35};
for(int i=0;i<arr.length;i++) { //轮数
    for(int j=1;j<arr.length;j++) {//比较的次数
        if(arr[j-1]>arr[j])
        {
            int temp=arr[j-1];
            arr[j-1]=arr[j];
            arr[j]=temp;
        }//endif
        
    }//endfor2
}//endfor1
System.out.println(Arrays.toString(arr));
}//endmain
}//endclass

在java中可以使用Arrays.sort(数组名称);

原文地址:https://www.cnblogs.com/xuwangqi/p/11019768.html