2018-03-11 數(shù)據(jù)結(jié)構(gòu)入門

1.哈希(Hash)

計數(shù)排序中的桶就是hash,hash的意思就是一個key對應(yīng)一個value,如:
數(shù)組也是hash:a[0]=1,a[1]=2,......
對象也是hash

2.隊列

先進先出,和排隊一樣

let q = []; 

q.push('第一');
q.push('第二');
q.push('第三');
q.shift(); //第一
q.shift(); //第二
q.shift(); //第三

基數(shù)排序里的桶就是隊列,因為是先進先出

3.棧

先進后出,和隊列相反

let stack = []; 

stack.push('第一');
stack.push('第二');
stack.push('第三');
stack.pop(); //第三
stack.pop(); //第二
stack.pop(); //第一

4.鏈表

let a = {
    value:1,
    next:{
         value:2,
         next:{
            value:3
         }
    }
}

a.next.value=2;
a.next.next.value=3;
比數(shù)組好在刪除中間的數(shù)據(jù)很方便,比如刪除第二項,直接:

a.next = a.next.next

5.樹

  1. html就是一種樹。
  2. 二叉樹每個節(jié)點最多有兩個分支,被稱為左子樹和右子樹
  3. 定義根節(jié)點為第0層,二叉樹的第i層最多有 2i個節(jié)點,整棵樹最多有2i+1-1個節(jié)點
  4. 完全二叉樹和滿二叉樹可以用數(shù)組來存
  5. 定義二叉樹根節(jié)點為第0層,完全二叉樹或滿二叉樹每一層的第一個數(shù)在數(shù)組中為a[2i-1],每一層的最后一個數(shù)為a[2i+1-1-1]
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容