从这里开始学习基本的排序算法。
基本排序中,冒泡排序算得上是最简单的。
思路:
它的思想是比较相邻两个数,大的放在最后(从小到大),这样一次排序之后,那么会有一个最大的数放在最后的位置上。
看一组数据:5,4,3这三个,如果要对它进行排序,看看我们是如何来排序的:
比较5,4,排成4,5,3,再比较5,3,排成4,3,5。这样最大的5就排好了。
再比较4,3,排成3,4,5,再比较4,5,排成3,4,5。这样最大的4就排好了。
综上,你可以得出这样的一个结论,如果一组未排序数据有n个,那么一次需要n-1次排序。
实现:
具体代码如下:
public class BubbleSort{
public static void main(String args[]){
int array[]=new int[]{10,9,8,7,6,5,4,3,2,1};
int i,j;
int temp;
System.out.println("在排序之前的输出:");
for(i=0;i<array.length;i++){
System.out.print(array[i]+" ");
}
//排序的趟数
for(i=0;i<array.length-1;i++){
//每一趟下的排序
for(j=0;j<array.length-i-1;j++){
//比较相邻的两个数
if(array[j]>array[j+1]){
temp=array[j];
array[j]=array[j+1];
array[j+1]=temp;
}
}
}
System.out.println("\n排序之后的输出:");
for(i=0;i<array.length;i++){
System.out.print(array[i]+" ");
}
}
}
这是最基本简单的排序算法,还有多种改进方式,