c的鍊錶實現

2022-06-30 20:51:10 字數 1278 閱讀 4603

複習了單向鍊錶雙向鍊錶,**中注釋不多,但基本從函式名字就可以知道函式的作用。

雙向鍊錶中的前後節點中的思路是按照linux核心中思路寫的。

gcc 7.4.0

#include #include typedef struct node*lnode,*llist,node;

void insert(llist list, int data, int pos)else

tmps->next = tmp;

}}void delete(llist list, int pos)elseelse}}

}void changedata(llist list, int data, int pos)else

if(tmp->next != null)else if(tmp->pos == pos)else

}}void deletelist(llist list)

free(list);

}void show(llist list)

printf("pos:%d,data:%d\n",tmp->pos,tmp->data);

}int main()

#include #include typedef struct pnpn;

typedef struct node*lnode,*llist,node;

void insert(llist list, int data, int pos)else

pntmp->prev = tmps;

pntmp->next = null;

tmps->pn->next = tmp;

tmp->pos = pos;

tmp->data = data;

tmp->pn = pntmp;

}}void delete(llist list, int pos)elseelse}}

}void changedata(llist list, int data, int pos)else

if(tmp->pn->next != null)else if(tmp->pos == pos)else

}}void deletelist(llist list)

free(list);

}void show(llist list)

printf("pos:%d,data:%d\n",tmp->pos,tmp->data);

}int main()

c 鍊錶的實現

author jacky ma date 23th,may,07 主要實現 1 鍊錶的建立,2 逆置 3 排序 4 有序鍊錶的歸併 5 兩鍊錶連線 6 迴圈鍊錶的判定 include include using namespace std 鍊錶節點結構 struct linknode 建立單鏈表 l...

鍊錶的C 實現

陣列中插入乙個元素或者刪除乙個元素時,必須移動陣列中的元素,從而使動態列表的順序儲存低效。鍊錶可以解決這一問題,它由資料和乙個指向下乙個節點的指標組成。基本的操作有構造 判空 插入 刪除和遍歷。程式如下 include using namespace std template class list ...

鍊錶C 實現

node.h 第乙個檔案 ifndef node h define node h define true 1 define false 0 define ok 1 define error 0 define null 0 define flag 1 class node endif node h l...