将数组升序排列的方法与冒泡排序

example array :     [4,6,1,4,7,5,9,3]


更新使用JS中的sort()方法排序 :

代码如下

<script type="text/javascript">
            var example = [4,6,1,40,7,5,9,3];
//          var re = example.sort();
//          自带的sort()方法是按第一个字符排序的,因此会把7排在40后面,需要手动加一个函数,其参数是固定的,函数名可以自定
            function sort_num(x,y){
                return x-y;         //x-y为升序,y-x为降序
            }
//          因此在调用sort方法时,需要将sort_num函数传入,切记不是将sort_num()传入!
            var re = example.sort(sort_num);
            document.write(re);
        </script>

—————————-分割线——————————
更新冒泡排序:

代码如下

<script type="text/javascript">
    function sort_array(arr){
        for (var i=0;i<arr.length-1;i++) {  //外层循环控制循环的轮数
            for (var j=0;j<arr.length-1-i;j++) { //内层循环控制这这一轮元素比较的次数,-i是因为每次比完后,靠右的元素均为较大值,不需再比较
                if (arr[j]>=arr[j+1]) {
                    var temp = arr[j];  //定义临时变量,当作数组元素交换的容器        
                    arr[j]= arr[j+1];//元素交换位置
                    arr[j+1] = temp;
                }
            }
        }
        return arr;
    }
    var example = [4,6,1,4,7,5,9,3];
    document.write(sort_array(example));
</script>

——————————–分割线———————————–

JS代码算法如下:

<script type="text/javascript">
    function sort_array(arr){
        var temp;       //定义临时变量,当作数组元素交换的容器
        for (var i=0;i<arr.length-1;i++) {  //外层循环控制需要比较的元素数量
            for (var j=i+1;j<arr.length;j++) { //内层循环控制这个元素比较的次数
                if (arr[i]>=arr[j]) {
                    temp = arr[j];              //元素交换位置
                    arr[j]= arr[i];
                    arr[i] = temp;
                }
            }
        }
        return arr;
    }
    var example = [4,6,1,4,7,5,9,3];
    document.write(sort_array(example));
</script>

若有错漏,欢迎建议和指正.
如果您有更好的方式,期待与您的交流!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值