程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> C++之數據結構

C++之數據結構

編輯:C++入門知識

做了好多題,發現了好多新的定義,如根節點,二叉樹,圖等等,涉及到了好多有關數據結構的知識,剛開始的幾道選擇題貌似都是和此相關的東西,以下是自己畫的簡單的思維導圖

vcPmo6y/ydPDy7PQ8rTmtKK94bm5us3BtMq9tOa0or3hubnBvdbWt723qKGjwe3N4qOs1bujrLbTwdCjrLrNtK7SssrHz9/Q1LHttcTM2Mrix+m/9qOsuczV4tCptrzK9NPaz9/Q1L3hubmhozxicj4KM6OpwbTKvbTmtKK6zcuz0PK05rSitcSxyL3Po7o8YnI+CjxpbWcgYWx0PQ=="" src="http://www.2cto.com/uploadfile/Collfiles/20140310/20140310140304358.jpg">
隊列:
1)先進先出的特點,排隊買東西則是一個很好的舉例,排頭的顧客買完後走掉,新來的顧客排在隊尾。
2)鏈式存儲:要知道任何一種實現表的方法,都可以用於實現隊列。棧也同此;用指針實現的隊列得到的實際上是一個單鏈表。
\
二叉樹:
1)定義:二叉樹(Binary Tree)是個有限元素的集合,該集合或者為空、或者由一個稱為根(root)的元素及兩個不相交的、被分別稱為左子樹和右子樹的二叉樹組成。當集合為空時,稱該二叉樹為空二叉樹。在二叉樹中,一個元素也稱作一個結點。
二叉樹是有序的,即若將其左、右子樹顛倒,就成為另一棵不同的二叉樹。即使樹中結點只有一棵子樹,也要區分它是左子樹還是右子樹。
2)概念:
\
3)性質:
\
線性結構和非線性結構:
1)線性結構:是n個數據元素的有序集合,在數據結構中指的是數據元素之間存在著“一對一”的線性關系的數據結構。
四個基本特征: 集合中必存在唯一的一個“第一個元素”; 集合中必存在唯一的一個“最後的元素”; 除最後元素之外,其它數據元素均有唯一的“後繼”; 除第一元素之外,其它數據元素均有唯一的“前驅”。 舉例:如(a1,a2,a3……an),a1為第一個元素,an為最後一個元素,所以此集合即為一個線性結構的集合。
2)非線性結構的一個邏輯特征是一個結點元素可能對應多個直接前驅和多個後繼。
3)常見的線性結構:線性表(順序表,鏈表),棧,隊列,雙隊列,數組,串
常見的非線性結構:二維數組,多維數組, 廣義表,樹(二叉樹),圖(網)

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved