雙向鍊錶 全部操作

2021-10-09 05:44:21 字數 1037 閱讀 2451

初始化,尾插(頭插類似,相當於前一位的尾插),遍歷,插入,刪除,判空

#include #include using namespace std;

typedef struct dnodednode,*dlinklist;

bool initdlinklist(dlinklist &l) //初始化雙向鍊錶

bool empty(dlinklist l) //判斷鍊錶非空

bool insertdlinklist(dlinklist &l,int i,int e) //插入操作

if(p==null||j!=i-1) //健壯**

return 0;

s=(dnode *)malloc(sizeof(dnode));

s->data=e;

s->next=p->next;

if(p->next!=null)

p->next->prior=s;

p->next=s;

s->prior=p;

return 1;

}bool deletedlinklist(dlinklist &l,int i,int &e) //刪除操作

if(p==null||j!=i) //健壯**

return 0;

e=p->data;

if(p->prior!=null)

p->prior->next=p->next;

if(p->next!=null) //判斷是否為最後

p->next->prior=p->prior;

free(p);

return 1;

}dlinklist dlinklist_tailinsert(dlinklist &l) //尾插

return l;

}void lookdlinklist(dlinklist l) //遍歷

cout<}int main()

雙向鍊錶 全部操作

初始化,尾插 頭插類似,相當於前一位的尾插 遍歷,插入,刪除,判空 include include using namespace std typedef struct dnodednode,dlinklist bool initdlinklist dlinklist l 初始化雙向鍊錶 bool ...

雙向鍊錶的操作

include using namespace std 列印選項 void printtheselect typedef struct dulnode dulnode,dulinklist 初始化雙向鍊錶 void initdlist dulinklist l cout 雙向鍊錶構造完畢 n 列印雙...

雙向鍊錶 基本操作

test.c define crt secure no warnings 1 include doubleslishtnode.h void test1 initdslist pushback printfdslist popback void test2 pushfront popfront vo...