數(shù)據(jù)結(jié)構(gòu)是相互之間存在一種或多種特定關(guān)系的數(shù)據(jù)元素的集合。
線性表
線性表:List,零個(gè)或多個(gè)數(shù)據(jù)元素的有限序列。
順序表:一段地址連續(xù)的存儲單元依次存儲線性表的數(shù)據(jù)元素。
#defineMAXSIZE100 //表的最大長度 typedefintdata_t; typedefstruct{ data_tdata[MAXSIZE]; //表的存儲空間 intlast; //表的當(dāng)前長度 }*seqlist_t
單鏈表:結(jié)點(diǎn)存儲了數(shù)據(jù)元素和后繼元素的存儲地址,鏈接成表。
typedefintdata_t; typedefstructnode{ data_tdata;//存放數(shù)據(jù) structnode*next;//存放后繼結(jié)點(diǎn)地址 }*linklist_t
雙鏈表:結(jié)點(diǎn)存儲了數(shù)據(jù)元素,以及前驅(qū)和后繼元素的存儲地址,鏈接成表。
typedefintdata_t; typedefstructnode{ data_tdata;//存放數(shù)據(jù) structnode*prior; //存放前驅(qū)結(jié)點(diǎn)地址 structnode*next;//存放后繼結(jié)點(diǎn)地址 }*dlinklist_t
棧
棧:Stack,是限定僅在表尾進(jìn)行插入和刪除操作的線性表。
順序棧:一段地址連續(xù)的存儲單元,由數(shù)組定義,配合數(shù)組下標(biāo)表示棧頂指針。
#defineMAXSIZE100//棧的最大長度 typedefintdata_t; typedefstruct{ data_tdata[MAXSIZE]; //棧的存儲空間 inttop;//棧的棧頂位置 }*seqstack_t
鏈?zhǔn)綏#褐荒茉阪湵眍^部進(jìn)行插入和刪除操作的單鏈表,鏈表尾部就是棧底,鏈表頭指針就是棧頂指針。
typedefintdata_t; typedefstructnode{ data_tdata; //存放數(shù)據(jù) structnode*next;//存放后繼結(jié)點(diǎn)地址 }*linkstack_t
隊(duì)列
隊(duì)列:Queue,是只允許在一端進(jìn)行插入操作,另一端進(jìn)行刪除操作的線性表。
順序隊(duì)列:一段地址連續(xù)的存儲單元,由數(shù)組定義,配合數(shù)組下標(biāo)表示隊(duì)頭和隊(duì)尾。
#defineMAXSIZE100//隊(duì)列的最大長度 typedefintdata_t; typedefstruct{ data_tdata[MAXSIZE];//隊(duì)列的存儲空間 intfront,rear;//隊(duì)頭隊(duì)尾的位置 }*seqqueue_t
鏈?zhǔn)疥?duì)列:只能在鏈尾插入、鏈頭刪除元素的單鏈表。
typedefintdata_t; typedefstructqnode{//隊(duì)列的結(jié)點(diǎn)結(jié)構(gòu) data_tdata;//存放數(shù)據(jù) structqnode*next; //存放后繼結(jié)點(diǎn)地址 }*qnode_t; typedefstruct{//隊(duì)列的鏈表結(jié)構(gòu) qnode_tfront,rear; //隊(duì)頭隊(duì)尾指針 }*linkqueue_t
二叉樹
二叉樹:Binary Tree,是n(n≥0)個(gè)節(jié)點(diǎn)的有限集合,它或者是空集(n=0),或者是由一個(gè)根節(jié)點(diǎn)以及兩棵互不相交的、分別稱為左子樹和右子樹的二叉樹組成。
typedefintdata_t; typedefstructbnode{ data_tdata; //存放數(shù)據(jù) structbnode*lchild,*rchild; //左右孩子指針 }*btree_t;
審核編輯:湯梓紅
-
嵌入式
+關(guān)注
關(guān)注
5095文章
19189瀏覽量
307960 -
代碼
+關(guān)注
關(guān)注
30文章
4835瀏覽量
69118 -
數(shù)據(jù)結(jié)構(gòu)
+關(guān)注
關(guān)注
3文章
573瀏覽量
40237
原文標(biāo)題:不同數(shù)據(jù)結(jié)構(gòu)的定義代碼
文章出處:【微信號:嵌入式攻城獅,微信公眾號:嵌入式攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
什么是數(shù)據(jù)結(jié)構(gòu)(Data Structrue)
數(shù)據(jù)結(jié)構(gòu)
C語言與數(shù)據(jù)結(jié)構(gòu)
數(shù)據(jù)結(jié)構(gòu)鏈表的基本操作
數(shù)據(jù)結(jié)構(gòu)是什么?數(shù)組為什么要有數(shù)組
數(shù)據(jù)結(jié)構(gòu)教程,下載
![<b class='flag-5'>數(shù)據(jù)結(jié)構(gòu)</b>教程,下載](https://file.elecfans.com/web2/M00/48/A1/pYYBAGKhtBOAUJtLAAArvzW_ZHo150.jpg)
什么叫數(shù)據(jù)結(jié)構(gòu)?
![什么叫<b class='flag-5'>數(shù)據(jù)結(jié)構(gòu)</b>?](https://file1.elecfans.com//web2/M00/A4/5E/wKgZomUMM-aAP_UFAAAYGl_q_nk122.jpg)
數(shù)據(jù)結(jié)構(gòu)與算法
數(shù)據(jù)結(jié)構(gòu)是什么_數(shù)據(jù)結(jié)構(gòu)有什么用
![<b class='flag-5'>數(shù)據(jù)結(jié)構(gòu)</b>是什么_<b class='flag-5'>數(shù)據(jù)結(jié)構(gòu)</b>有什么用](https://file1.elecfans.com//web2/M00/A6/EA/wKgZomUMQTmAITjkAAARDaPRhyE645.jpg)
為什么要學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)?數(shù)據(jù)結(jié)構(gòu)的應(yīng)用詳細(xì)資料概述免費(fèi)下載
![為什么要學(xué)習(xí)<b class='flag-5'>數(shù)據(jù)結(jié)構(gòu)</b>?<b class='flag-5'>數(shù)據(jù)結(jié)構(gòu)</b>的應(yīng)用詳細(xì)資料概述免費(fèi)下載](https://file.elecfans.com/web1/M00/63/76/o4YBAFuXj0eAFNJeAABHI9ZdjH0530.png)
什么是數(shù)據(jù)結(jié)構(gòu)?為什么要學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)?數(shù)據(jù)結(jié)構(gòu)的應(yīng)用實(shí)例分析
![什么是<b class='flag-5'>數(shù)據(jù)結(jié)構(gòu)</b>?為什么要學(xué)習(xí)<b class='flag-5'>數(shù)據(jù)結(jié)構(gòu)</b>?<b class='flag-5'>數(shù)據(jù)結(jié)構(gòu)</b>的應(yīng)用實(shí)例分析](https://file.elecfans.com/web1/M00/65/7A/o4YBAFurOTuAdCq3AABVU-eOQhY072.png)
Linux內(nèi)核代碼中常用的數(shù)據(jù)結(jié)構(gòu)有哪些?
NetApp的數(shù)據(jù)結(jié)構(gòu)是如何演變的
![NetApp的<b class='flag-5'>數(shù)據(jù)結(jié)構(gòu)</b>是如何演變的](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
Linux內(nèi)核中使用的數(shù)據(jù)結(jié)構(gòu)
![Linux內(nèi)核中使用的<b class='flag-5'>數(shù)據(jù)結(jié)構(gòu)</b>](https://file1.elecfans.com/web2/M00/AF/06/wKgZomVMekqAGVOxAABbJpIMkco874.jpg)
epoll的基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)
![epoll的基礎(chǔ)<b class='flag-5'>數(shù)據(jù)結(jié)構(gòu)</b>](https://file1.elecfans.com/web2/M00/AD/67/wKgaomVNkz6AIZQ6AAD9PA9wOjY755.jpg)
評論