以下是利用Java数组编写一个实现冒泡排序的程序的完整源代码。
主要是,该冒泡算法作了优化和改进,又其值得参考之处:
public class sort8
{
static void sort(int [] array)
{
int size = array.length-1; //数组中无须比较位
int swaps = 0; //交换标志
do{
swaps = 0;
for(int i = 0;i<size;i++)
{
if(array[i]>array[i+1])
{
int temp = array[i];
array[i] = array[i+1];
array[i+1] = temp;
swaps++;
}
}
size--;
}while(swaps != 0);
}
public static void main(String ss[])
{
int array[] = {3,56,8,4,798, 2,54,66,99,121,
32,4,25,553,6456, 12,74,65,1217,77};//待排序的数组
sort(array);
for(int i = 0;i<20;i++)
{
System.out.print(array[i]+" ");
}
}
}