JavaScript冒泡循环排序案例

1.如果一个数组保存元素是有序的(从大到小),向这个数组中插入一个数,使得插入后的数组元素仍然保持有序。

变色部分为冒泡循环排序代码的核心部分,代数理解思路

    <script type="text/javascript">
            function insert(){
                //首先声明一个顺序的数组,从大到小
                var arr=[6,5,3,2,1];
                //加入一个数字,先把它放在最后一位
                arr[arr.length] = Number(prompt("输入一个数字,插入数组中:")) ;
                //然后把所有的元素进行排序
                //外部循环先遍历所有的数字
                for(var i=0;i<arr.length-1;i++){//内部循环跳出一次i+1,内部循环范围小1,在本题中就i=1时候,已经证明了a[4]比a[5]大了;
                    for(var j=0;j<arr.length-i-1;j++){//i<arr.length-i-1因为
                        //如果第一个数字比第二个数字小的话就换位置
                        if(arr[j]<arr[j+1]){
                            var temp ;//声明一个空值来换位置
                            temp = arr[j+1];
                            arr[j+1] = arr[j];
                            arr[j] = temp;
                        }
                    }
                }
                console.log(arr);
            }
        </script>
        <button onclick="insert()">插入排序</button>

猜你喜欢

转载自www.cnblogs.com/wangzheng98/p/10872396.html