今天看了js中数组的方法,其中sort()方法用于排序,就让我想到学C语言的时候有一个冒泡算法,就想用js写一个。
<script> var arr=[1,30,20,40,21,31,10]; //orient为true时,为升序排列,为false时,为降序排列 function change(arr,orient,arrLength){ var i=0; var arrChange; for(i=0;i<(arrLength-1);i++){ if(arr[i]>arr[i+1]){ if(orient){ arrChange=arr[i]; arr[i]=arr[i+1]; arr[i+1]=arrChange; } }else{ if(!orient){ arrChange=arr[i]; arr[i]=arr[i+1]; arr[i+1]=arrChange; } } } } function changeNum(arr,orient){ var j=arr.length; console.log(arr); for(j;j>1;j--){ change(arr,orient,j); console.log("第"+(arr.length-j+1)+"次"+"|"+arr.join("|")); } } changeNum(arr,false); </script>
时间: 2024-11-07 13:28:39