資料結構之線性鍊錶 相容多平台編譯

2021-10-10 23:18:08 字數 810 閱讀 4137

最近,發現自己對資料結構還不熟,於是就想複習下資料結構,想把資料結構中的鍊錶,棧,佇列,二叉樹等涉及到的**再敲一遍;同時,又想到,現在做工程專案時,做出的產品**往往需要具有可移植性。基於上述原因,構建了如下目錄結構:

如上圖所示,在dat_structure_study資料夾下面,有三個資料夾,乙個makefile與system.cfg。

makefile:這是頂層的makefile。

system.cfg:這是為了相容各個系統所作的配置檔案。

common:放公共標頭檔案**。

chapter_x:《資料結構》中第x章節,比如chapter_2指的是第二章。

output:可執行檔案的輸出目錄。

為了相容各個編譯環境,在system.cfg中可根據環境或者平台的不同,選擇平不同的編譯工具,目前只包含了ubuntu和itop4412。如下圖所示,選擇的是itop4412:

編譯出來的可執行檔案放在output資料夾下:

最終,可在itop4412單板上執行該elf檔案:

這裡是實現了線性鍊錶中的順序表的插入與刪除操作,,有興趣的朋友也可以試著將其移至到自己的單板上,新增自己的編譯工具,當然啦,如果有不足之處,也可以指出來,一起交流,學習。

感興趣的小夥伴可以通過如下兩種方式鏈結獲取到原始碼:

github:

壓縮包:

資料結構之線性鍊錶

線性鍊錶是一種資料儲存結構,其分為順序儲存結構和鏈式儲存結構。順序儲存結構儲存資料的方式和平時接觸到的陣列是一樣的,其資料結構定義如下 define maxsize 100 typedef struct sqlist 關於鍊錶的初始化,尋找資料,插入資料,刪除資料等操作,與陣列類似,這裡就不做詳細介...

資料結構線性表之鍊錶

c 關於鍊錶的操作,包括建立鍊錶 正序和倒序插入 輸出鍊錶內容 插入節點 刪除節點 銷毀等操作 單鏈表基本操作 include include define elemtype int typedef struct nodelnode,linklist linklist link linklist m...

資料結構之線性鍊錶的演算法

include iostream.h include malloc.h 這個只是乙個小小的標頭檔案 這些都是用鍊錶表示的線性鍊錶 的一些最為常見的一些函式 這些函式做得最不好的乙個地方就是沒有將線性表的長度存放在鍊錶的頭節點 define error 0 define ok 1 define nul...