精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

不同數據結構的定義代碼

嵌入式攻城獅 ? 來源:嵌入式攻城獅 ? 2023-11-29 14:13 ? 次閱讀

數據結構是相互之間存在一種或多種特定關系的數據元素的集合。

線性表

線性表:List,零個或多個數據元素的有限序列。

順序表:一段地址連續的存儲單元依次存儲線性表的數據元素。

#defineMAXSIZE100  //表的最大長度
typedefintdata_t;
typedefstruct{
data_tdata[MAXSIZE]; //表的存儲空間
intlast;  //表的當前長度
}*seqlist_t

單鏈表:結點存儲了數據元素和后繼元素的存儲地址,鏈接成表。

typedefintdata_t;
typedefstructnode{
data_tdata;//存放數據
structnode*next;//存放后繼結點地址
}*linklist_t

雙鏈表:結點存儲了數據元素,以及前驅和后繼元素的存儲地址,鏈接成表。

typedefintdata_t;
typedefstructnode{
data_tdata;//存放數據
structnode*prior;  //存放前驅結點地址
 structnode*next;//存放后繼結點地址
}*dlinklist_t

棧:Stack,是限定僅在表尾進行插入和刪除操作的線性表。

順序棧:一段地址連續的存儲單元,由數組定義,配合數組下標表示棧頂指針。

#defineMAXSIZE100//棧的最大長度
typedefintdata_t;
typedefstruct{
data_tdata[MAXSIZE];  //棧的存儲空間
inttop;//棧的棧頂位置
}*seqstack_t

鏈式棧:只能在鏈表頭部進行插入和刪除操作的單鏈表,鏈表尾部就是棧底,鏈表頭指針就是棧頂指針。

typedefintdata_t;
typedefstructnode{
data_tdata; //存放數據
structnode*next;//存放后繼結點地址
}*linkstack_t

隊列

隊列:Queue,是只允許在一端進行插入操作,另一端進行刪除操作的線性表。

順序隊列:一段地址連續的存儲單元,由數組定義,配合數組下標表示隊頭和隊尾。

#defineMAXSIZE100//隊列的最大長度
typedefintdata_t;
typedefstruct{
data_tdata[MAXSIZE];//隊列的存儲空間
intfront,rear;//隊頭隊尾的位置
}*seqqueue_t

鏈式隊列:只能在鏈尾插入、鏈頭刪除元素的單鏈表。

typedefintdata_t;
typedefstructqnode{//隊列的結點結構
data_tdata;//存放數據
structqnode*next; //存放后繼結點地址
}*qnode_t;

typedefstruct{//隊列的鏈表結構
qnode_tfront,rear;  //隊頭隊尾指針
}*linkqueue_t

二叉樹

二叉樹:Binary Tree,是n(n≥0)個節點的有限集合,它或者是空集(n=0),或者是由一個根節點以及兩棵互不相交的、分別稱為左子樹和右子樹的二叉樹組成。

typedefintdata_t;
typedefstructbnode{
data_tdata;  //存放數據
structbnode*lchild,*rchild; //左右孩子指針
}*btree_t;

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5068

    文章

    19017

    瀏覽量

    303240
  • 代碼
    +關注

    關注

    30

    文章

    4747

    瀏覽量

    68348
  • 數據結構
    +關注

    關注

    3

    文章

    573

    瀏覽量

    40092

原文標題:不同數據結構的定義代碼

文章出處:【微信號:嵌入式攻城獅,微信公眾號:嵌入式攻城獅】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    什么是數據結構(Data Structrue)

    的一個一個元素數據對象:具有相同特性的數據元素的集合結構數據元素之間具有的關系(聯系) 二.  數據結構
    發表于 02-09 17:17

    數據結構

    1.數據結構的概念 所謂數據結構是指由某一數據對象及該對象中所有數據成員之間的關系組成的集合。成員之間的關系有很多種,最常見的是前后件關系。 2.
    發表于 03-04 14:13

    C語言與數據結構

    目錄個人介紹筆試單選題C語言數據結構計算機與操作系統網絡通信填空題C語言與數據結構網絡通信問答題嵌入式基礎知識C語言與數據結構C編程一面二面功能快捷鍵合理的創建標題,有助于目錄的生成如何改變文本
    發表于 08-06 07:10

    數據結構鏈表的基本操作

    嵌入式學習基礎-數據結構鏈表的基本操作鏈表節點采用結構體的方式進行定義,下面是最基礎的定義只有一個數據data,*pNext用于指向下一個節
    發表于 12-22 08:05

    數據結構是什么?數組為什么要有數組

    1、數據結構是什么數據結構就是研究數據如何組織(在內存中排布),如何加工的學問。2、最簡單的數據結構:數組為什么要有數組?因為程序中有好多個類型相同、意義相關的變量需要管理,這時候如果
    發表于 01-07 08:08

    數據結構教程,下載

    1. 數據結構的基本概念 2. 算法與數據結構3. C語言的數據類型及其算法描述要點4. 學習算法與數據結構的意義與方法
    發表于 05-14 17:22 ?0次下載
    <b class='flag-5'>數據結構</b>教程,下載

    什么叫數據結構?

    什么叫數據結構 定義:由某一數據對象及該對象中所有數據成員之間的關系組成。記為:        &nb
    發表于 07-15 16:12 ?1224次閱讀
    什么叫<b class='flag-5'>數據結構</b>?

    數據結構與算法

    全國C語言考試公共基礎知識點——數據結構與算法,該資料包含了有關數據結構與算法的全部知識點。
    發表于 03-30 14:27 ?0次下載

    數據結構是什么_數據結構有什么用

    數據結構是計算機存儲、組織數據的方式。數據結構是指相互之間存在一種或多種特定關系的數據元素的集合。通常情況下,精心選擇的數據結構可以帶來更高
    發表于 11-17 14:45 ?1.6w次閱讀
    <b class='flag-5'>數據結構</b>是什么_<b class='flag-5'>數據結構</b>有什么用

    為什么要學習數據結構?數據結構的應用詳細資料概述免費下載

    本文檔的主要內容詳細介紹的是為什么要學習數據結構數據結構的應用詳細資料概述免費下載包括了:數據結構在串口通信當中的應用,數據結構在按鍵監測當中的應用
    發表于 09-11 17:15 ?13次下載
    為什么要學習<b class='flag-5'>數據結構</b>?<b class='flag-5'>數據結構</b>的應用詳細資料概述免費下載

    什么是數據結構?為什么要學習數據結構數據結構的應用實例分析

    本文檔的主要內容詳細介紹的是什么是數據結構?為什么要學習數據結構?數據結構的應用實例分析包括了:數據結構在串口通信當中的應用,數據結構在按鍵
    發表于 09-26 15:45 ?14次下載
    什么是<b class='flag-5'>數據結構</b>?為什么要學習<b class='flag-5'>數據結構</b>?<b class='flag-5'>數據結構</b>的應用實例分析

    Linux內核代碼中常用的數據結構有哪些?

    Linux內核代碼中廣泛使用了數據結構和算法,其中最常用的兩個是鏈表和紅黑樹。
    發表于 07-20 09:39 ?486次閱讀

    NetApp的數據結構是如何演變的

    統一數據跨分布式資源進行管理,以實現數據移動的一致性和控制,安全、可見性、保護和訪問。 本文定義數據結構及其體系結構,討論了
    發表于 08-25 17:15 ?0次下載
    NetApp的<b class='flag-5'>數據結構</b>是如何演變的

    Linux內核中使用的數據結構

    Linux內核代碼中廣泛使用了數據結構和算法,其中最常用的兩個是鏈表和紅黑樹。 鏈表 Linux內核代碼大量使用了鏈表這種數據結構。鏈表是在解決數組不能動態擴展這個缺陷而產生的一種
    的頭像 發表于 11-09 14:24 ?453次閱讀
    Linux內核中使用的<b class='flag-5'>數據結構</b>

    epoll的基礎數據結構

    一、epoll的基礎數據結構 在開始研究源代碼之前,我們先看一下 epoll 中使用的數據結構,分別是 eventpoll、epitem 和 eppoll_entry。 1、eventpoll 我們
    的頭像 發表于 11-10 10:20 ?764次閱讀
    epoll的基礎<b class='flag-5'>數據結構</b>