首页 > 代码库 > 把一个数组按照从小到大的顺序排列
把一个数组按照从小到大的顺序排列
arr = [ 13,15,6,2,12,41,38,32 ];
var e = 0;
for ( var i = 0 ; i < arr.length ; i++ ){
for ( var j = 0 ; j < arr.length ; j++ ){
if ( arr [ j ] > arr [ j +1 ]){
arr [ j ] = arr [ j ] ^ arr [ j + 1 ];
arr [ j + 1 ] = arr [ j ] ^ arr [ j + 1 ];
arr [ j ] = arr [ j ] ^ arr [ j + 1 ];
};
};
};
console.log ( arr );
利用双for循环,当 i = 0 时,第二个for循环会依次比较相邻的两个元素,
如果前面一个元素大于后面一个元素就会把前面一个元素跟后面一个元素对调,
对调的方式有很多总,这里利用的是亦或 ( ^ ) 。
当第二个for循环第一次循环结束后,整个数组的最大元素就会被移动到最后一位。
然后第一个for循环循环第二次,然后再进行一次排序,就会让数组第二大的元素排到
倒数第二取。如此循环下去当第一个for循环结束时,整个数组就按照从小到大的顺序排好了。
把一个数组按照从小到大的顺序排列
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。