數(shù)據(jù)結(jié)構(gòu)是計(jì)算機(jī)存儲(chǔ)、組織數(shù)據(jù)的方式。數(shù)據(jù)結(jié)構(gòu)是指相互之間存在一種或多種特定關(guān)系的數(shù)據(jù)元素的集合。通常情況下,精心選擇的數(shù)據(jù)結(jié)構(gòu)可以帶來(lái)更高的運(yùn)行或者存儲(chǔ)效率。數(shù)據(jù)結(jié)構(gòu)往往同高效的檢索算法和索引技術(shù)有關(guān)。我們將會(huì)在本系列的博客種利用數(shù)據(jù)結(jié)構(gòu)的知識(shí)打造一個(gè)可復(fù)用的模板庫(kù),基礎(chǔ)語(yǔ)言是 C++。
本系列博客內(nèi)容是根據(jù)狄泰軟件學(xué)院的狄泰嵌入式C++數(shù)據(jù)結(jié)構(gòu)課程的內(nèi)容總結(jié)而來(lái),包含各種數(shù)據(jù)結(jié)構(gòu)類(lèi)型,如鏈表、樹(shù)、圖等類(lèi)型。
數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)
算法時(shí)間復(fù)雜度及效率
泛型編程簡(jiǎn)介
異常類(lèi)的構(gòu)建
頂層父類(lèi)的構(gòu)建
線性表的本質(zhì)、操作及順序存儲(chǔ)結(jié)構(gòu)
StaticList 和 DynamicList
順序存儲(chǔ)線性表的分析
數(shù)組類(lèi)
線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
單鏈表
順序表和單鏈表的對(duì)比
單鏈表的優(yōu)化
靜態(tài)單鏈表
典型問(wèn)題分析
再論智能指針
循環(huán)鏈表的實(shí)現(xiàn)
雙向鏈表
Linux 宏定義之 offsetof 與 container_of
Linux 內(nèi)核鏈表剖析
雙向循環(huán)鏈表
棧
隊(duì)列
兩個(gè)有趣的問(wèn)題
字符串類(lèi)
KMP子串查找算法
KMP 算法的應(yīng)用
遞歸思想及應(yīng)用
遞歸思想及應(yīng)用續(xù)
選擇排序和插入排序
冒泡排序和希爾排序
歸并排序和快速排序
排序之代理類(lèi)
數(shù)據(jù)結(jié)構(gòu)之樹(shù)
樹(shù)到二叉樹(shù)的轉(zhuǎn)換
二叉樹(shù)
二叉樹(shù)的經(jīng)典面試題分析
歡迎大家一起來(lái)學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu),可以加我QQ:243343083。