乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      數(shù)組及排序、去重和隨機(jī)點(diǎn)名

       好程序員IT 2019-05-30

      棧堆結(jié)構(gòu):

      堆棧都是一種數(shù)據(jù)項(xiàng)按序排列的數(shù)據(jù)結(jié)構(gòu),只能在一端(稱為棧頂(top))對(duì)數(shù)據(jù)項(xiàng)進(jìn)行插入和刪除。

      棧:存放的是路徑;容量有限(在一開(kāi)始被定義之后就不會(huì)改變了);先進(jìn)后出(FILO)first In

       Last Out

      堆:路徑映射的數(shù)據(jù);容量無(wú)限(因?yàn)橐恢笨赡鼙桓淖儯?;列?duì)優(yōu)先,先進(jìn)先出(FIFO)first In Last Out

      如果我們把數(shù)組理解為棧堆結(jié)構(gòu)的話,那么 

      var arr =  [1,2,3,4,5,6 ];

      那么arr就是 棧 他是一個(gè)路徑 : 找到數(shù)據(jù)的存儲(chǔ)層;

      數(shù)據(jù) [1,2,3,4,5,6] 就是堆 ; 

      如果我們想要 改變堆中的數(shù)據(jù)的話,那么我們可以用push()方法向尾部添加一個(gè)數(shù)據(jù),或者用pop()方法刪除尾部數(shù)據(jù)。

      數(shù)組:

      for-in(結(jié)合數(shù)組或?qū)ο螅?/span>

      數(shù)組的概念,一組(一般情況下相同類型)的數(shù)據(jù);

      下標(biāo)(索引)的概念;

      創(chuàng)建數(shù)組

      var arr= new Array(10); //創(chuàng)建一個(gè)包含 10 個(gè)元素的數(shù)組;

      var arr2= new Array('楊懷智',100,'教師','遼寧');//使用構(gòu)造函數(shù)創(chuàng)建;

      var arr3 = [1,2,3,4,5];

      靜態(tài)賦值

      arr[0] = 5;

      arr[1] = 12;

      arr[2] = 4;

      動(dòng)態(tài)賦值

      for(var i=0; i<5; i++){

          arr[i] = Math.random();

      }

      數(shù)組對(duì)象自帶的屬性:length代表數(shù)組有多少數(shù)據(jù)項(xiàng);

      遍歷訪問(wèn)數(shù)組  普通for循環(huán)和 forEach循環(huán)

      arr.forEach(function(element,index,Arr){

      })

      push/pop、unshift/shift方法

      arr.push('BJ'); //數(shù)組末尾添加一個(gè)元素

      arr.unshift('TJ');  //數(shù)組開(kāi)頭添加一個(gè)元素

      var str = arr.pop();   //移除末尾一個(gè)元素,并返回該元素

      var str = arr.shift();   //移除開(kāi)頭一個(gè)元素,并返回該元素

      隊(duì)列結(jié)構(gòu):

      練習(xí):找出所有1-100之間7的倍數(shù)和包含7的數(shù)字

      倒序reverse方法;

      arr.reverse()方法不會(huì)創(chuàng)建新的數(shù)組,而是將原有數(shù)組順序進(jìn)行了改變;

      var arr=[1,2,3]

      arr.reverse();

      console.log(arr)//3,2,1

      從小到大排序sort方法  (數(shù)字的排序)

      冒泡排序算法:

      <!DOCTYPE html>

      <html lang="en">

      <head>

      <meta charset="UTF-8">

      <title>Document</title>

      <script>

      var arr = [2, 333, 1, 4, 6, 5, 7, 8];

      for (var i = 0; i < arr.length - 1; i++) {

      for (var j = 0; j < arr.length - i; j++) {

      var ls;

      if (arr[j] > arr[j + 1]) {

      ls = arr[j];

      arr[j] = arr[j + 1]

      arr[j + 1] = ls

      }

      }

      }

      console.log(arr)

      </script>

      </head>

      <body>

      </body>

      </html>

      選擇排序算法:

      <!doctype html>

      <html lang="en">

      <head>

      <meta charset="UTF-8">

      <title>Document</title>

      <script>

      var arr = [3, 4, 1, 5, 2]

      for (var i = 0; i < arr.length; i++) { //趟數(shù)

      var min = arr[i];

      var index = i;

      for (var j = i; j < arr.length; j++) {

      if (min > arr[j]) {

      min = arr[j];

      index = j;

      }

      }

      arr[index] = arr[i];

      arr[i] = min;

      }

      document.write(arr);

      </script>

      </head>

      <body>

      </body>

      </html>

      案例:去重

      <!DOCTYPE html>

      <html lang="en">

      <head>

      <meta charset="utf-8">

      <script>

      var arr = [11, 2, 33, 4, 2, 11, 3, 44, 33, 2]

      arr.sort();

      var arr2 = [arr[0]]

      for (var i = 0; i < arr.length; i++) {

      if (arr[i] != arr2[arr2.length - 1]) {

      arr2.push(arr[i]);

      }

      }

      alert(arr2)

      </script>

      </head>

      <body>

      </body>

      </html>

      隨機(jī)點(diǎn)名程序:

      <!DOCTYPE html>

      <html lang="en">

      <head>

      <meta charset="utf-8">

      <script>

      document.onclick = function() {

      var aName = ['楊懷智1', '楊懷智3', '楊懷智4']

      var rad = Math.round(Math.random() * 2);

      document.write(aName[rad])

      }

      </script>

      </head>

      <body>

      隨機(jī)點(diǎn)名

      </body>

      </html>

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多