亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

JS數(shù)組排序方法實(shí)例分析

 更新時(shí)間:2016年12月16日 08:42:26   作者:鬼畜十三  
這篇文章主要介紹了JS數(shù)組排序方法,結(jié)合實(shí)例形式分析了javascript數(shù)組冒泡排序與選擇排序原理及實(shí)現(xiàn)技巧,需要的朋友可以參考下

本文實(shí)例講述了JS數(shù)組排序方法。分享給大家供大家參考,具體如下:

方法一.冒泡排序

思路:依次比較數(shù)組中的第一個(gè)元素和第二個(gè)元素,如果第一個(gè)元素大于第二個(gè)元素,則交換位置,所以需要兩個(gè)函數(shù):交換位置函數(shù)和比較函數(shù)

比較輪數(shù)為數(shù)組長(zhǎng)度

var arr=[2,58,49,26,34];
function change(f,s){
  var temp=arr[f];
  arr[f]=arr[s];
  arr[s]=temp;
}
for(var i=0;i<arr.length;i++){
  for(var j=0;j<arr.length-1;j++){
    if(arr[j]>arr[j+1]){
      change(j,+j+1);
    }
  }
}
alert(arr);

方法二.選擇排序

從數(shù)組中找到最小值,扔到數(shù)組第一位,然后從剩下數(shù)組中循環(huán)操作

var arr=[2,58,49,26,34];
function change(){
  if(arr.length==1){
    return arr;
  }
  var iMin=arr[0];
  var index=0;
  for(var i=0;i<arr.length;i++){
    if(arr[i]<iMin){
      iMin=arr[i];
      index=i;
    }
  }
  var prev=arr.splice(index,1);
  return prev.concat(change(arr));
}
alert(change(arr));

更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《JavaScript數(shù)組操作技巧總結(jié)》、《JavaScript排序算法總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》、《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》及《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)

希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • countUp.js實(shí)現(xiàn)數(shù)字滾動(dòng)效果

    countUp.js實(shí)現(xiàn)數(shù)字滾動(dòng)效果

    這篇文章主要為大家詳細(xì)介紹了countUp.js實(shí)現(xiàn)數(shù)字滾動(dòng)效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • HTA版JSMin(省略修飾語(yǔ)若干)基于javascript語(yǔ)言編寫(xiě)

    HTA版JSMin(省略修飾語(yǔ)若干)基于javascript語(yǔ)言編寫(xiě)

    JSMin是一種很有用的ECMAScript代碼減肥工具,雖然它只是一種較為初級(jí)的工具,但用它來(lái)對(duì)付我自己編寫(xiě)的大部分ECMAScript代碼效果都很不錯(cuò),而且在我這里也從未發(fā)生過(guò)減肥后代碼出錯(cuò)之類(lèi)的問(wèn)題。
    2009-12-12
  • 詳解JavaScript模塊化開(kāi)發(fā)

    詳解JavaScript模塊化開(kāi)發(fā)

    一個(gè)模塊就是實(shí)現(xiàn)特定功能的文件,有了模塊,我們就可以更方便地使用別人的代碼,想要什么功能,就加載什么模塊。模塊開(kāi)發(fā)需要遵循一定的規(guī)范,否則就都亂套了
    2016-12-12
  • getElementsByTagName vs selectNodes效率 及兼容的selectNodes實(shí)現(xiàn)

    getElementsByTagName vs selectNodes效率 及兼容的selectNodes實(shí)現(xiàn)

    天在csdn上看到有人問(wèn) getElementsByTagName 和 selectNodes誰(shuí)更快 ,這個(gè)還真沒(méi)研究過(guò)。
    2010-02-02
  • 檢測(cè)一個(gè)函數(shù)是否是JavaScript原生函數(shù)的小技巧

    檢測(cè)一個(gè)函數(shù)是否是JavaScript原生函數(shù)的小技巧

    這篇文章主要介紹了檢測(cè)一個(gè)函數(shù)是否是JavaScript原生函數(shù)的小技巧,本文給出了兩種檢測(cè)方法,需要的朋友可以參考下
    2015-03-03
  • javascript中閉包(Closure)詳解

    javascript中閉包(Closure)詳解

    閉包(closure)是Javascript語(yǔ)言的一個(gè)難點(diǎn),也是它的特色,很多高級(jí)應(yīng)用都要依靠閉包實(shí)現(xiàn)。小編之前一直糊里糊涂的,沒(méi)有能夠弄明白JavaScript的閉包到底是什么,有什么用,本文把自己的理解些出來(lái)分享一下,希望不理解JavaScript閉包的朋友們看了之后能夠理解閉包!
    2016-01-01
  • js 實(shí)現(xiàn)獲取name 相同的頁(yè)面元素并循環(huán)遍歷的方法

    js 實(shí)現(xiàn)獲取name 相同的頁(yè)面元素并循環(huán)遍歷的方法

    下面小編就為大家?guī)?lái)一篇js 實(shí)現(xiàn)獲取name 相同的頁(yè)面元素并循環(huán)遍歷的方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-02-02
  • JQuery+DIV自定義滾動(dòng)條樣式的具體實(shí)現(xiàn)

    JQuery+DIV自定義滾動(dòng)條樣式的具體實(shí)現(xiàn)

    用DIV和DIV自身的滾動(dòng)條相互控制內(nèi)容的滾動(dòng),DIV自身的滾動(dòng)條樣式可以用DIV層覆蓋,重寫(xiě)滾動(dòng)條樣式
    2013-06-06
  • javascript中一些數(shù)組常用的API總結(jié)

    javascript中一些數(shù)組常用的API總結(jié)

    Js中數(shù)組是一個(gè)重要的數(shù)據(jù)結(jié)構(gòu),它相比于字符串有更多的方法,本篇文章總結(jié)了一些數(shù)組中常用的API,我們把它們分成兩類(lèi),一類(lèi)是會(huì)改變?cè)紨?shù)組,一類(lèi)是不會(huì)改變?cè)紨?shù)組,感興趣的小伙伴可以學(xué)習(xí)一下
    2023-09-09
  • 基于JS代碼實(shí)現(xiàn)圖片在頁(yè)面中旋轉(zhuǎn)效果

    基于JS代碼實(shí)現(xiàn)圖片在頁(yè)面中旋轉(zhuǎn)效果

    這篇文章主要介紹了基于JS代碼實(shí)現(xiàn)圖片在頁(yè)面中旋轉(zhuǎn)效果 的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-06-06

最新評(píng)論