javascript如何用数组实现冒泡排序的算法,不用sort函数怎么实现?

javascript如何用数组实现冒泡排序的算法,不用sort函数怎么实现?

4个回答

 var examplearr=[8,94,15,88,55,76,21,39];
function sortarr(arr){
    for(i=0;i<arr.length-1;i++){
        for(j=0;j<arr.length-1-i;j++){
            if(arr[j]>arr[j+1]){
                var temp=arr[j];
                arr[j]=arr[j+1];
                arr[j+1]=temp;
            }
        }
    }
    return arr;
}
sortarr(examplearr);
console.log(examplearr);
qq_41282437
qq_41282437 function paoSort( $arr ){ $len = count($arr); for ($i = 1; $i< $len ; $i++){ for ($k = 0; $k < $len - $i ; $k++){ if($arr[$k] < $arr[$k+1]){ $tmp = $arr[$k]; $arr[$k] = $arr[$k+1]; $arr[$k +1] = $tmp; } } } return $arr; }
接近 2 年之前 回复
dabocaiqq
虾基霸回答 那我就不采纳了,你来抽啊
接近 2 年之前 回复
caozhy
每个人都有一个梦才不会孤单的说话就有天堂 好了,这个就是正解。lz不采纳的话,我抽你。
接近 2 年之前 回复
/**
 * [冒泡排序]
 * @param  {array} [乱序数组]
 * @return {array} [顺序/倒序数组]
 */
function bubble(arry) {
    let len = arry.length - 1
    let temp
    for (let i = 0; i < len; i++) {
        for (let j = 0; j < len; j++) {
            if (arry[j] > arry[j + 1]) {
                temp = arry[j]
                arry[j] = arry[j + 1]
                arry[j + 1] = temp
            }
        }
    }
    return arry
}
q411020382
无敌小啫喱 回复dabocaiqq: 没事
接近 2 年之前 回复
dabocaiqq
虾基霸回答 应该采纳你的,心一慌,采纳错了。还是谢谢你
接近 2 年之前 回复

/*原生方法。。快速排序*/

    //1、找一个基准点  
    //2、建立两个数组,分别存储左边右边的数组  
    //3、利用递归,进行下次比较  
    function quick_sort (arr) {  
        if(arr.length<=1){  
            return arr;  
        }  

        var num=Math.floor(arr.length/2);//找到基准点  

        var numValue=arr.splice(num,1);//基准点对应的基准值  

        var left=[];//左边数组  
        var right=[];//右边数组  

        for (var i = 0; i < arr.length; i++) {  
            if (arr[i]<numValue) {  
                left.push(arr[i]);//小于这个基准值的放到左边  
            }else{  
                right.push(arr[i])  ;//大于放到右边                  
            }  
        };  
        return quick_sort(left).concat([numValue],quick_sort(right));//连接  
    }  

    alert(quick_sort([12,5,6,37,22,40]))  
dabocaiqq
虾基霸回答 很感谢,你的回答最好。
接近 2 年之前 回复

function paoSort( $arr ){
$len = count($arr);
for ($i = 1; $i< $len ; $i++){
for ($k = 0; $k < $len - $i ; $k++){
if($arr[$k] < $arr[$k+1]){
$tmp = $arr[$k];
$arr[$k] = $arr[$k+1];
$arr[$k +1] = $tmp;
}
}
}
return $arr;
}

dabocaiqq
虾基霸回答 谢谢你,下次采纳你的
接近 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问

相似问题

99
只要回答,都给C币,请问怎么实现javascript对字符串和数字相互转换?
7
回答赚c币看这里:javascript中实现日期转中文的星期几,还有数字转中文大写
6
javascript中怎么实现求一个数组的中位数,求中位数的方式怎么实现的呢?
12
javascpt怎么将两个数组的结果相加,得到一个新的数组呢,非要循环实现么?不用循环怎么写?
2
请问如何使用javascript的map语句实现不定多个数组的相加?相加怎么用map实现?
2
javascript怎么实现判断页面上的链接的功能,判断链接怎么用js语言实现呢?
8
javascript开发读取一个excel文件,并且提取里面的表格到数组,用javascpt怎么写?
8
javascript怎么实现两个数组中随机两个相加?相加的结果用alet方式进行输出?
8
javascript求数组中的最大数,返回的是数组的下标,不是值,百度了一天没找到,怎么做
9
javascript都来回答,怎么实现下拉选择日期的功能,JQ或者JS怎么实现?
4
SrpingMVC如何接收JS二维数组参数
1
javascript多维数据数组的转换是怎么进行循环和判断的,怎么直接判断转换以后的字符串?
3
javascript语言怎么能够对后台的数组型(非字符串)实现split一样的功能?
1
Unifia.js库中的高斯模糊算法怎么调用
0
javascript对多个数组判断以后得到其中所有的尾标元素并且仅仅提交?
1
php数组怎么插入js代码
2
js数组释放内存的问题
3
ajax请求的json数据,获取的对象数组中,每个对象的属性顺序是怎么排的,这个排序的依据是什么呢
0
js怎么实现页面数据排序 要求table里的第一列不参加排序??
1
JS 将数组A元素复制到数组B中的疑问