摘要:參考鏈接十大經(jīng)典排序算法動(dòng)圖演示冒泡排序?qū)⒆畲蟮姆旁谧詈蟮诙N改善已經(jīng)排序好的最大數(shù)組不必在比較選擇排序
參考鏈接:十大經(jīng)典排序算法(動(dòng)圖演示)
冒泡排序//-------------------------- for(var i=0,len=arr.length;i選擇排序arr[j]){ //將最大的放在最后 var temp=0; t=arr[i]; arr[i]=arr[j]; arr[j]=temp; } } } //--------第二種(改善)------------ for(var i=1,len=arr.length;i arr[j+1]){ var temp=0; t=arr[i]; arr[i]=arr[j]; arr[j]=temp; } } }
//-------------------------- for(var i=0,len=arr.length-1;i直接插入排序arr[j]){ min=j; } } if(min!=i){ var temp=0; t=arr[min]; arr[min]=arr[i]; arr[i]=temp; } }
for (int i = 1; i < arr.Length; i++){ if (arr[i - 1] > arr[i]) { int temp = arr[i]; //每次取出當(dāng)前的要比較的值 int j = i; while (j > 0 && arr[j - 1] > temp) //大于它的話,要賦值給它 { arr[j] = arr[j - 1]; j--; } arr[j] = temp; } }js實(shí)現(xiàn)快速排序
//-----------------first--------------- var quickSort = function(arr){ var arr = arr.concat(); //concat的新用法(深復(fù)制) if(arr.length<=1) return arr; var index = Math.floor(arr.length/2); var centerValue = arr.splice(index,1); //console.log(centerValue); var left = []; var right = []; for(var i=0,len=arr.length;i反轉(zhuǎn)排序=arr[i]){ left.push(arr[i]); }else{ right.push(arr[i]); } } // debugger //console.log(quickSort(left)); //console.log(right); var res1 = arguments.callee(left); var res2 = arguments.callee(right); //return left.concat(right); return res1.concat(centerValue,res2); } var arr=[9,8,7,4,5,3,77]; var result = quickSort(arr); console.log(result); console.log(arr); //-----------------second--------------- var quickSort = function(arr){ if(arr.length<=1) return arr; var index = Math.floor(arr.length/2); console.log(index); //1 var centerValue = arr.slice(index,index+1)[0]; console.log(centerValue); //5 var left = []; var right = []; for(var i=0,len=arr.length;i =arr[i]){ left.push(arr[i]); }else{ right.push(arr[i]); } } var res1 = arguments.callee(left); var res2 = arguments.callee(right); return res1.concat(res2); } var arr=[9,8,7,4,5,3,4,77]; //var result = quickSort(arr); //console.log(result); console.log(arr); var aa=[3,4]; //console.log(aa.slice(1,2)); console.log(aa.splice(0,0));
for(var i=0,len=arr.length-1;i參數(shù)排序 function mySort() { var tags = new Array();//使用數(shù)組作為參數(shù)存儲(chǔ)容器 tags = Array.prototype.slice.call(arguments); tags.sort(function(a,b){ return a-b; }); return tags;//返回已經(jīng)排序的數(shù)組 } var result = mySort(50,11,16,32,24,99,57,100); //傳入?yún)?shù)個(gè)數(shù)不確定 console.info(result); //顯示結(jié)果
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/88424.html
摘要:我們必須對(duì)數(shù)字?jǐn)?shù)組進(jìn)行升序排序,并找出給定數(shù)字在該數(shù)組中的位置。算法說(shuō)明將值第二個(gè)參數(shù)插入到數(shù)組第一個(gè)參數(shù)中,并返回其在排序后的數(shù)組中的最低索引。我們的目標(biāo)是將輸入的數(shù)字在輸入數(shù)組后中排序后,再返回它的索引。 翻譯:瘋狂的技術(shù)宅原文:https://medium.freecodecamp.o... 本文首發(fā)微信公眾號(hào):前端先鋒歡迎關(guān)注,每天都給你推送新鮮的前端技術(shù)文章 編寫(xiě)算法時(shí)...
摘要:算法原理插入排序是一種簡(jiǎn)單直觀的排序算法。插入排序在實(shí)現(xiàn)上,通常采用排序,因而在從后向前掃描過(guò)程中,需要反復(fù)把已排序元素逐步向后挪位,為最新元素提供插入空間。新元素插入當(dāng)前位置。 算法原理 插入排序是一種簡(jiǎn)單直觀的排序算法。它的工作原理非常類似于我們抓撲克牌。對(duì)于未排序的數(shù)據(jù)(右手抓到的牌),在已排序序列(左后已經(jīng)排好序的牌)中從后向前掃描,找到相應(yīng)位置并插入。插入排序在實(shí)現(xiàn)上,通常采...
摘要:前言本文將分享幾個(gè)在項(xiàng)目中常用的數(shù)組方法原文地址不定期有干貨更新哦歡迎數(shù)組排序按數(shù)組元素大小從小到大進(jìn)行排序按數(shù)組元素大小從大到小進(jìn)行排序按數(shù)組元素的從小到大進(jìn)行排序按數(shù)組元素的從大到小進(jìn)行排序數(shù)組去重?cái)?shù)組深拷貝數(shù)組等份分割數(shù)組扁平 前言 本文將分享幾個(gè)在項(xiàng)目中常用的數(shù)組方法~ 原文地址: https://github.com/webfansplz... 不定期有干貨更新哦,歡迎wat...
摘要:類型檢測(cè)數(shù)組檢測(cè)數(shù)組有以下幾種方法,前端保定就業(yè)方法前端保定就業(yè)前端保定就業(yè)前端保定就業(yè)轉(zhuǎn)換數(shù)組利用方法將數(shù)組轉(zhuǎn)換為字符串前端深圳保定輸出結(jié)果字符串前端深圳保定轉(zhuǎn)換原始值張三張三進(jìn)出棧方法在數(shù)組最后面添加新的元素前端保定深圳前端保定深圳在數(shù) Array類型 檢測(cè)數(shù)組 檢測(cè)數(shù)組有以下幾種方法, instanceof var arr=[前端,保定,就業(yè)]; console.log(arr ...
摘要:今天我們來(lái)討論的問(wèn)題有兩個(gè)如何用實(shí)現(xiàn)選擇排序冒泡排序插入排序快速排序歸并排序堆排序?qū)ι傻娜f(wàn)個(gè)隨機(jī)數(shù)進(jìn)行排序,各個(gè)排序算法的性能分析??焖倥判蚩焖倥判蛩惴ɑ旧鲜敲嬖嚤乜寂判蛩惴ǎ彩莻髀勛詈糜玫乃惴?。 今天我們來(lái)討論的問(wèn)題有兩個(gè): 如何用JavaScript實(shí)現(xiàn)選擇排序、冒泡排序、插入排序、快速排序、歸并排序、堆排序; 對(duì)生成的10萬(wàn)個(gè)隨機(jī)數(shù)進(jìn)行排序,各個(gè)排序算法的性能分析。 創(chuàng)...
閱讀 696·2021-11-18 10:07
閱讀 2890·2021-09-22 16:04
閱讀 890·2021-08-16 10:50
閱讀 3365·2019-08-30 15:56
閱讀 1795·2019-08-29 13:22
閱讀 2705·2019-08-26 17:15
閱讀 1254·2019-08-26 10:57
閱讀 1119·2019-08-23 15:23