JavaScript实现快速排序

首先声明,我是一个菜鸟。一下文章中出现技术误导情况盖不负责

    <html>
    <head>

        <script type="text/javascript">

            window.onload = function() {

                var div = document.getElementById("cnt");

                var arr = [3, 2, 5, 4, 7, 9, 11, 22, 14, 100, 45, 678, 232, 111, 45, 23, 11, 111];

                quickSort(arr, 0, arr.length-1);
        
                for(var i in arr) {
                
                    div.innerHTML = div.innerHTML + "    " + arr[i];
                
                }
            
            }

            function quickSort(arr, begin, end) {

                if(end < begin) return;

                var p = partition(arr, begin, end);
                quickSort(arr, begin, p-1);
                quickSort(arr, p+1, end);
           
            }


            function partition(arr, begin, end) {

                var key = arr[begin];
                var pivot = begin;
                
                while(begin != end) {
                
                    while(arr[end] >= key && end != begin) {
                        end--;
                    
                    }

                    while(arr[begin] <= key && begin != end) {
                        begin++;
                    
                    }
                
                    if(begin != end) {
                        var tmp = arr[begin];
                        arr[begin] = arr[end];
                        arr[end] = tmp;
                    }
                
                }
                
                arr[pivot] = arr[begin];
                arr[begin] = key;

                return begin;
                    
            }


        </script>

    </head>

    <body>

        <div id="cnt"></div>

    </body>

</html>

    每日一道理
悲观的人,先被自己打败,然后才被生活打败;乐观的人,先战胜自己,然后才战胜生活。悲观的人,所受的痛苦有限,前途也有限;乐观的人,所受的磨难无量,前途也无量。在悲观的人眼里,原来可能的事也能变成不可能;在乐观的人眼里,原来不可能的事也能变成可能。悲观只能产生平庸,乐观才能造就卓绝。从卓绝的人那里,我们不难发现乐观的精神;从平庸的人那里,我们很容易找到阴郁的影子。

     

文章结束给大家分享下程序员的一些笑话语录: 联想——对内高价,补贴对外倾销的伟大“民族”企业。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值