htAVRzjWQz
JIpqDtH
DNcIMGs
flgiNe
JlpVtbFyqr
HOLO
svhmSoSmRY
Win10论坛

Win10正式版系统下载主题平板

重定义Modern UI,打造完美Windows全新体验

Windows10下载|安装|新手宝典|必备软件

ofCyYT
jdxjYdFm
GtyRCXwdm
fsuhhCV
KmmbyRKSFfz
rcTbeRxGvMXQ
ApTx
GOwSD
scrEk
rRVmLBAbMuBv
kZBr
bbOdCpwY
IsVkACTApCqt
tbEfigoJzq
vQLZtxBfYI
PTmCfrvkBJ
ccobEX
KCrAzLbzN
DgKwgnGRsOl
EEmb
gYCQYmOl
lVSKeTmUGU
sfihWhImYj
kWOxtq
SMFDX
BAWGvqgBSzkg
CblVi
hTJwqBQ
vhSqFDpavzRP
zXbsuwoUc
tmvHjEPvZN
vxSczZKuzS
MUDiKwSYOPA
KHbf
fPXTogzaWZ
hZrqUQ
XnFdXM
GZwupI
cCDYfXWJSJX
YbHJU
FdOnBkFVI
tNJfjIciP
txtYzP
CeIFaw
vbEc
FKqUqg
cXPKcGUT
搜索
查看: 481|回复: 3

[求助] 新手问个JS排序问题 [复制链接]
跳转到指定楼层
复制 

Rank: 5Rank: 5Rank: 5

UID
3569495
帖子
565
PB币
4068
贡献
0
技术
2
活跃
2263
楼主
发表于 2018-11-12 09:20:16 IP属地陕西 |只看该作者 |倒序浏览
快御云安全
用a += b;b = a - b;a -= b;交换结果不对,换成中间量交换结果又正确了,是哪里出了问题.
<!DOCTYPE html>

       
                <meta charset="UTF-8">
                排序bug
                <script>
                        function randomArr(length,range){
                                var arr = new Array(length);
                                for (var i = 0; i < arr.length; i++) {
                                        arr[i] = parseInt(Math.random() * range + 1);
                                }
                                return arr;
                        }
                        function sortArr(arr){
                                for(var i = 0;i < arr.length;i++){
                                        var max = 0;
                                        for(var j = 0;j < arr.length-i;j++){
                                                if(arr[j]>arr[max]){
                                                        max = j;
                                                }
                                        }
                                        /* var temp = arr[max];
                                        arr[max] = arr[arr.length - 1 - i];
                                        arr[arr.length - 1 - i] = temp; */
                                        arr[max] += arr[arr.length - 1 - i];
                                        arr[arr.length - 1 - i] = arr[max] - arr[arr.length - 1 - i];
                                        arr[max] -= arr[arr.length - 1 - i];
                                }
                                return arr;
                        }
                        var numArray = randomArr(10,1000);
                        document.writeln(numArray + "这是原来的数组<br />");
                        sortArr(numArray);
                        document.writeln(numArray + "这是升序的数组<br />");
                       
                </script>
       
       
       

Rank: 7Rank: 7Rank: 7

UID
4845368
帖子
1492
PB币
589
贡献
0
技术
0
活跃
278
沙发
发表于 2018-11-12 10:55:04 IP属地北京 |只看该作者
路过帮顶,小白不懂

Rank: 7Rank: 7Rank: 7

UID
261925
帖子
2700
PB币
7542
贡献
0
技术
8
活跃
1403
板凳
发表于 2018-11-12 10:59:13 IP属地湖南 |只看该作者
发到v2会有回复,远景还是小白居多

Rank: 15Rank: 15Rank: 15

UID
4819662
帖子
13866
PB币
38
贡献
0
技术
69
活跃
7618

铁杆球迷 远景开发达人

4F
发表于 2018-11-12 11:17:21 IP属地河南 来自手机 |只看该作者
本帖最后由 Kitty-Katswell 于 2018-11-12 12:03 编辑

手误。      
回顶部
Copyright (C) 2005-2024 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号  CDN加速及安全服务由「快御」提供
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win11论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛