说起排序,可能很多程序员多会想起冒泡和选择,这两种是最基本的排序,也最容易实现,但是当我们需要对海量数据进行排序时,这几种算法是否依然适合呢?没错,他们的时间复杂度是最不起眼的,那么我们应该如何来提高效率呢?这里整理了六种排序算法,时间的优越性能由低到高!
1.冒泡排序
/**
* 冒泡排序
* 算法:每一趟从0到j 相邻的数进行比较
* @param array要排序的数组
*/
public static void bubbleSort(int array[],int length)
{
int i=0,j=length-1;
for(;j>0;j--)
{
for(i=0;i<j;i++)
{
if(array[i]>array[i+1])
{
int temp=array[i];
array[i]=array[i+1];
array[i+1]=temp;
}
}
}
}
2.选择排序
/**
* 选择排序
* 算法:每一趟从i开始,找出最小的数放在i
* @param array 要排序的数组
* @param length 从0到length要排序的长度
*/
public static void selectSort(