參考:大話資料結構(程杰)
部落格:豆瓣:
主要包括:
- 列表定義
- 判斷列表是否為空
- 初始化列表
- 列印列表
- 清空列表
- 得到第i個位置元素
- 元素定位
- 列表第i個元素插入
- 列表第i個元素刪除
- 計算列表長度
#include
#include
#define ok 1
#define error 0
#define true 1
#define false 0
typedef int status;
#define maxsize 100
typedef int elemtype;
typedef struct sqlist;
int emptylist(sqlist l)
status initlist(sqlist *l)
status printlist(sqlist l)
return ok;
}status clearlist(sqlist *l)
status getelem(sqlist l, int i, elemtype *e)
int locateelem(sqlist l, elemtype e)
status listinsert(sqlist *l, int i, elemtype e)
l->data[i - 1] = e;
l->length++;
return ok;
}status listdelete(sqlist *l, int i, elemtype *e)
l->length--;
return ok;
}int listlength(sqlist l)
int main()
線性表 順序儲存C語言實現
定義 線性表是包含有限相同型別元素,除首元素外,其他元素只有乙個唯一前驅元素,除尾元素外,其他元素只有乙個後繼元素的線性結構表。均有2種儲存方式 順序儲存 鏈式儲存 資料結構定義 typedef struct tabletable 基本操作 table inittable t.length 0 re...
線性表的順序儲存結構(C語言實現)
最近在研究資料結構,看了好多資料結構方面的書,但好多書都是用的偽 實現,對初學者或者語言功底不深厚的同學來說很不友好,也有好多書說是用c語言實現,但應用了c 的東西,比如c 中的引用,導致 晦澀難懂。學資料結構不能只是看書,一定要將各種結構用 實現,我也將各個部分實現的 貼出來。首先是線性表的順序儲...
線性表的順序儲存結構的c語言實現
線性表的順序儲存結構可以由一維陣列實現 其查詢第i個元素的時間複雜度是o 1 直接訪問對應下標的陣列值即可data i 1 假設陣列從0開始記 但插入刪除操作的時間複雜度是o n 因為刪除 插入第i個元素時,i號元素其後的所有元素都要相應移動!include include 線性表的順序儲存結構 d...