排序过程
设想被排序的数组R[1..N]垂直竖立,将每个数据元素看作有重量的气泡,根据轻气泡不能在重气泡之下的原则,从下往上扫描数组R,凡扫描到违反本原则的轻气泡,就使其向上"漂浮",如此反复进行,直至最后任何两个气泡都是轻者在上,重者在下为止。
平均时间复杂度: O(n2)
Java Code:
public class BubbleSort {
public static float[] BubbleSortAlgorithm(float flt[], int length){
float sortedFlt[]=flt;
for(int i=0;i<length-1;i++){
for(int j=i+1;j<length;j++){
if (sortedFlt[i]>sortedFlt[j]) {
float temp=sortedFlt[i];
sortedFlt[i]=sortedFlt[j];
sortedFlt[j]=temp;
}
}
}
return sortedFlt;
}
}