一 基本概念
數(shù)據(jù)結(jié)構(gòu)和算法:存在一種或者是多種關(guān)系的數(shù)據(jù)元素的集合
邏輯結(jié)構(gòu):是指對象中元素之間的相互關(guān)系
物理結(jié)構(gòu):是邏輯結(jié)構(gòu)在計算機的內(nèi)存中存儲形式
二 邏輯結(jié)構(gòu)
1 集合結(jié)構(gòu)
多個元素同屬于一個集合里缎讼,并且元素之間沒有其他任何關(guān)系
2 線性結(jié)構(gòu)
線性結(jié)構(gòu)中的元素的關(guān)系是一對一的關(guān)系
3 樹形結(jié)構(gòu)
樹形結(jié)構(gòu)中的每個元素之間都存在一對多的層次關(guān)系
4 圖形結(jié)構(gòu)
圖形結(jié)構(gòu)中每個元素之間都是多對多的關(guān)系
三 物理結(jié)構(gòu)
數(shù)據(jù)元素的存儲形式有兩種? 順序存儲和鏈?zhǔn)酱鎯?/p>
1 順序存儲:是把數(shù)據(jù)元素存放在連續(xù)的存儲單元里,其數(shù)據(jù)元素之間的邏輯關(guān)系和物理關(guān)系是一直的(數(shù)組)
2 鏈?zhǔn)酱鎯? 邏輯關(guān)系是一個接著一個按順序(用指針指向下一個元素)坑匠,物理存儲時候可以是連續(xù)也可以不連續(xù)的(字典/HashMap)
程序 = 數(shù)據(jù)結(jié)構(gòu) + 算法