線性表 單鏈表 LinkList

2021-08-16 14:04:04 字數 1512 閱讀 4506

/**************************

線性表的鏈式儲存結構

功能**包含:

1)單鏈表的資料結構定義

2)單鏈表的整表建立--初始化

3)單鏈表的整表刪除

4)從單鏈表中獲取元素

5)從單鏈表中插入元素

6)從單鏈表中刪除元素

注意:**不進行debug,只實現基本功能

author:tmw

date:2018-3-9

**************************/

#include #include #define error -65530

#define ok 0

/**單鏈表資料結構定義**/

typedef struct node

node;

typedef struct node *linklist;

/**單鏈表整表的建立**/

//建立長度為n的單鏈表

void create_full_linklist( linklist *l, int n )

}/**單鏈表整表的刪除**/

void delete_full_linklist( linklist *l )

(*l)->next = null;

}/**從單鏈表中獲取元素**/

/**獲取單鏈表第i個位置上的元素**/

int getelement_from_linklist( linklist *l, int i )

/**第i個結點不存在的情況**/

if( j > i || !p )

return error;

return p->data;

}/**往單鏈表中第i個位置插入元素e**/

int insertelement_for_linklist( linklist *l, int i, int e )

if( !p || j > i-1 )

return error;

linklist q;

q = (linklist)malloc(sizeof(node));

q->data = e;

q->next = p->next;

p->next = q;

return ok;

}/**從單鏈表中刪除第i個位置上的元素,並返回**/

int deleteelement_from_linklist( linklist* l, int i )

if( !p || i > j )

return error;

/**刪除結點操作**/

linklist q;

q = p->next;

p->next = q->next;

/**此時q指向第i個位置**/

int e = q->data;

free(q);

return e;

}

夢想還是要有的,萬一實現了呢~~~ヾ(◍°∇°◍)ノ゙

線性表 單鏈表

define crt secure no deprecate define crt secure cpp overload standard names 1 includeusing namespace std typedef struct node node node headpointer 頭指...

線性表 單鏈表

單鏈表結構與順序儲存結構對比 一 儲存分配方式 1 順序儲存結構用一段連續的儲存單元依次儲存線性表的資料元素 2 單鏈表採用鏈式儲存結構,用一組任意的儲存單元存放線性表的元素 二 時間效能 1 查詢 順序儲存結構o 1 單鏈表o n 2 插入和刪除 順序儲存結構o n 單鏈表找到位置後插入刪除時間o...

線性表 單鏈表

template struct node template class linklist 無參建構函式,建立只有頭結點的空鍊錶 linklist t a int n 有參建構函式,建立有n個元素的單鏈表 linklist 析構函式 int length 求單鏈表的長度 t get int i 按位查...