物理結構:資訊在記憶體的表示
順序儲存
鏈式儲存
邏輯結構:
1、雜湊
2、線性表 1:1
順序線性表
鏈式線性表
3、樹形結構 1:n
概念:是n(n>=0)個節點的的有限集合(n=0稱為空樹)。在任意一棵非空樹中:(n=1)有且僅有乙個特定的節點稱為根(root)節點,n>1時,其餘節點(非根結點)可分為y個互不相交的有限集。
節點的分類:
節點的度:每個節點擁有子節點的個數
樹的度 :最大節點度
節點的關係:
孩子節點:節點的子樹
雙親節點:相應擁有孩子的節點
兄弟節點:同乙個雙親節點的
樹的層次:
節點的層次:從根節點開始,根的子節點層次+1,直至到此節+1
樹的層次(高度、深度):最大節點的層次
堂兄弟:在一同層次的節點,且不同雙親的節點
樹的儲存:(物理儲存:順序儲存,鏈式儲存)
順序樹形結構:有陣列儲存節點,表示出1:n
鏈式儲存結構:有鍊錶來儲存節點
雙親法:只需要記錄每個節點的父節點
優點:訪問上層很方便 缺點:訪問子節點麻煩(必須從頭到尾節點遍歷)
孩子法:每個節點只需要記錄子點即可。
優點:訪問子節點方便 缺點:浪費儲存空間,
葉子節點:沒有孩子節點(節點度為0)
二叉樹:是n(n>=0)個節點有限集合:(n==0空的二叉樹),且由乙個根節點和兩棵互不相交的左右子節點的二叉樹組成。
特殊的形狀:(n<=2)
1、空樹 n=0
2、只有乙個根 n=1
3、左子樹
n=24、右子樹
n=2特殊二叉樹:
斜樹: 所有節點在右子樹或者左子樹上 (n>1)
滿二叉樹: 如果所有節點的都存在左右孩子,並且葉子在同一層上
完全二叉樹:給每個節點取乙個連續編號,如果編號與滿二叉樹相同
總結1:
1、在二叉樹第i層次最多節點(滿):2~(i-1)
2、層次為d的二叉樹最多有多少個節點(滿):2~d -1
遍歷:(從根開始)每個節點都訪問一次。
層次、前序,中序、後序
層次: a-b-c-d-e-f
前序:先訪問此樹根,再訪問左子樹,最後此樹的右子樹
printf->root
left
right
總結:第乙個節就是根節點。
中序:先訪問此節點的左子樹,再訪問根節點,最後訪問右子樹
left
printf->root
right
總結:根節點在中間,左子樹在根的左側,右子樹在根右側
前、中遍歷:
前:abdecfg
a-根中:dbeafcg
dbe作為a(根)的左子樹 fcg作為根的右子樹
後序:
嵌入式每日學習心得2017 07 08
linux系統管理技術 linux系統的使用方式 1 桌面環境操作 傻瓜化,但功能不夠強大,某些操作效率很低甚至無法完成 2 shell命令 專業高效,但非常不直觀友好,學習難度大,需要記憶命令 要成為unix linux系統骨灰級玩家,必須常用掌握shell命令!常用的桌面環境 gnome kde...
嵌入式每日學習心得2017 07 10
對於linux相關命令,再次作一點總結,今天是上半部分,明天是下半部分 關於布置的小問題 問題1更改使用者名稱 usermod l newusername username 問題2更改主機名 hostname newname vi etc sysconfig network 問題3su和su 的區別...
嵌入式每日學習心得2017 07 13
進製 表數方式,是幾進製,就逢幾進一 十進位制 逢十進一 9 0 123 10 百 十 個 1 3 0 二進位制 逢二進一 1 0 2 八進位制 逢八進一 7 0 0123 八 十 3 8 0 2 8 1 1 8 2 八 二 001 010 011 十六進製制 逢十六進一 f a 9 0 0x321...