<script type="text/javascript">
//交换方法
function swap(items, firstIndex, secondIndex){
var temp = items[firstIndex];
items[firstIndex] = items[secondIndex];
items[secondIndex] = temp;
}
//正序正向冒泡
function bubbleSort(items){
var len = items.length,
i, j, stop;
for (i=0; i < len; i++){
for (j=0, stop=len-i; j < stop; j++){
if (items[j] > items[j+1]){
swap(items, j, j+1);
}
}
}
return items;
}
//正序反向冒泡
function bubbleSort2(items){
var len = items.length,
i, j;
for (i=len-1; i >= 0; i--){
for (j=len-i; j >= 0; j--){
if (items[j] < items[j-1]){
swap(items, j, j-1);
}
}
}
return items;
}
//反序冒泡
function bubbleSort3(items){
var len = items.length,
i,j,stop;
for(i=0;i<len; i++){
for(j=0,stop=len-i;j<stop;j++){
if(items[j]<items[j+1]){
swap(items,j,j+1);
}
}
}
return items;
}
var str1 = [1,3,8,9,2];
alert('正序正向排序输出:'+bubbleSort(str1)); //输出[1,2,3,8,9];
alert('正序正向排序输出:'+bubbleSort2(str1));//输出[1,2,3,8,9];
alert('反序排序输出:'+bubbleSort3(str1));//输出[9,8,3,2,1];
</script>
数组排序
最新推荐文章于 2024-07-24 20:02:07 发布