第四周專案4 建立雙鏈表演算法庫

2021-08-09 06:38:15 字數 2206 閱讀 7970

先是**:

ac**:

shuanglist.cpp

#include"shuanglist.h"

#includeusing namespace std;

//void creat(dlinknode *head,int num)///這個是尾插法建立起來的雙鏈表

////}

void creat(dlinknode *head,int num)///這個是頭插法

}void display(dlinknode *p)///輸出

cout

//

// cout

}if(p==null)

return;

q=p->next;

r=(struct node *)malloc(sizeof(struct node));

r->data=t;

r->prior=p;

r->next=p->next;

q->prior=r;

p->next=r;

}void shanchu(dlinknode *p,int g)///刪除雙鏈表的第g個節點

if(p==null)

return;

r=p->next->next;

p->next=r;

r->prior=p;

}int shuangempty(dlinknode *p)///判斷是否為空

int chang(dlinknode *p)///求鍊錶的長

return length;

}int getelem(dlinknode *p,int g)///獲取鍊錶第g個節點的值

if(p==null)

return -1;

return p->data;

}int cha(dlinknode *p,int x)///查詢鍊錶中是否存在元素x

else

return 1;}}

shuanglist.h

#ifndef shuanglist_h_included

#define shuanglist_h_included

typedef struct node

dlinknode;

void creat(dlinknode *head,int num);

void display(dlinknode *p);

void charu(dlinknode *p,int k,int t);

void shanchu(dlinknode *p,int g);

int shuangempty(dlinknode *p);

int chang(dlinknode *p);

int getelem(dlinknode *p,int g);

int cha(dlinknode *p,int x);

#endif // shuanglist_h_included

main.cpp

#include#include"shuanglist.h"

using namespace std;

int main()

{ dlinknode *head;

head=(struct node *)malloc(sizeof(struct node));

head->prior=null;

int num,a,b,c,d;

cin>>num;

creat(head,num);

display(head);

a=chang(head);

b=shuangempty(head);

c=getelem(head,6);

d=cha(head,9);

cout<

截圖:

還是很有意思的呀!

知識點總結:

都是類似的,要能觸類旁通,舉一反三!

心得總結:

多練多寫不要懈怠,爭取在規定時間內完成任務!

第四周專案4 建立雙鏈表演算法庫

ifndef dlinklist h included define dlinklist h included typedef int elemtype typedef struct dnode 定義雙鏈表結點型別 dlinklist void createlistf dlinklist l,ele...

第四周 專案四 建立雙鏈表演算法庫

煙台大學計控學院 作 者 王力源 完成日期 2016年9月23日 問題描述 雙鏈表演算法庫演算法庫採用程式的多檔案組織形式,包括兩個檔案 1.標頭檔案 dlinklist.h,包含定義雙鏈表資料結構的 巨集定義 要實現演算法的函式的宣告 2.原始檔 linklist.cpp,包含實現各種演算法的函式...

第四周專案4 建設雙鏈表演算法庫

include include typedef int elemtype typedef struct dnode 定義雙鏈表結點型別 dlinklist void createlistf dlinklist l,elemtype a,int n 頭插法建雙鏈表 void createlistr d...