把一个数组按照从小到大的顺序排列
Posted YC小杨
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了把一个数组按照从小到大的顺序排列相关的知识,希望对你有一定的参考价值。
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循环结束时,整个数组就按照从小到大的顺序排好了。
以上是关于把一个数组按照从小到大的顺序排列的主要内容,如果未能解决你的问题,请参考以下文章