数组冒泡排序
作者:Flying 日期:2008-01-05
冒泡算法对于很多人来说应该很熟悉了,我是文科出身,所以还是有必要学一下的。
数组排序有很多种算法。在冒泡算法中,较小的数组元素朝数组顶部逐渐冒上来,就像水中气泡上升一样,而较大的数组元素朝数组底部逐渐沉下去。这种算法用嵌套循环对整个数组数次遍历,每次遍历都比较数组中相邻的一对元素,如果它们以升序排列(或者值相等),那么它们的位置不变,否则交换它们的位置。看下面代码。
package {
public class Array2 {
public static function bubbleSort(array : Array) : void { //冒泡排序
for (var i : uint = 0;i < array.length - 1; i++) { //外层循环
for (var j : uint = 0;j < array.length - i - 1; j++) { //内层循环
if (array[j] > array[j + 1]) {
var temp : uint = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
}
}
print(i + 1, array);
}
}
public static function print(time : uint,array : Array) : void {
trace("第" + time + "次排序:");
trace(array.toString() + " ");
}
}
}
用法很简单,如下所示。
var array:Array = new Array(4,7,5,3,9,0); Array2.bubbleSort(array); /* 第1次排序: 4,5,3,7,0,9 第2次排序: 4,3,5,0,7,9 第3次排序: 3,4,0,5,7,9 第4次排序: 3,0,4,5,7,9 第5次排序: 0,3,4,5,7,9 */
在冒泡算法中,外层循环的次数即是该算法的次数。
上一篇: 在AIR中如何避免重复创建SQL数据库
下一篇: 使用FluorineFX Cosole测试Flash Remoting
文章来自: 本站原创
Tags: Actionscript3 Algorithm
相关日志:
评论: 1 | 引用: 0 | 查看次数: -
发表评论


|
| 59.42.170.245 |
| 取消审核 |
回复]