單鏈表以及雙向鍊錶的操作

2022-09-19 23:39:15 字數 1216 閱讀 4982

#include

#include

#define max 30

typedef struct s      //單向鍊錶的儲存結構

s,*linklist;

typedef struct dulist  //雙向鍊錶的儲存結構

dulnode,*dulinklist;

int initlist(s *s)           //建立空的單鏈表

void shuchu(s *p1)       //輸出單鏈表

}void createlist(linklist s,int n)    //為所建立的單鏈表增加資料

p1=s->next;

/*while(p1!=null)

*/shuchu(p1);

}void listinsert(s *s,int n,int m)      //單鏈表中值的插入

if(i==n-1)

p1=s->next;

shuchu(p1);

}void listdelect(s *s,int n)     //單鏈表刪除

if(i==n-1)

p1=s->next;

shuchu(p1);

}void locateelem(s *s,int m)    //查詢單鏈表中是否有要查詢的值

i++;

p=p->next;}}

int duinitlist(dulinklist s1)          //建立空的雙向鍊錶

void shuchu1(dulinklist s3)      //輸出雙向鍊錶中的值

printf("\n");

}void createlist_dul(dulinklist s2,int n)    //向所建立的雙向鍊錶增加數

s1=s2->next;

shuchu1(s1);

}void listinsert_dul(dulinklist s1,int n,int m1)       //向雙向鍊錶中插入數

if(n1==n-1)

s3=s1->next;

shuchu1(s3);

}void listdelect_dul(dulinklist s2,int n)      //刪除雙向鍊錶第n個位置的值

if(n==i)

s3=s2->next;

shuchu1(s3);

}int main()

基於c 的單鏈表,雙向鍊錶操作以及環

1 單向鍊錶 生成,頭插入,尾插入,某個元素後面插入,刪除某元素 includeusing namespace std struct node node create else scanf d a return h void addafter node head,int data,int afdat...

鍊錶的基本操作 單鏈表 雙向鍊錶 迴圈鍊錶

本週第一次講座,學長給我們簡單的概述了資料結構和演算法,然後對鍊錶的一些操作進行了講解,下來之後,我把原來書上的一些 鍊錶的基本操作與鍊錶的逆置,排序等操作結合起來,整理出來 鍊錶是由結點構成的,關鍵是定義結點 c語言程式設計上兩大特例 鍊錶節點的定義 遞迴函式的定義。這兩個違反了先定義再使用。3....

單鏈表的增刪查改,以及雙向鍊錶的有關操作

最近在回顧線性儲存結構 鏈式儲存有關的操作,到現在基本上覆習完畢,整理相關 如下 include include include struct nodenode typedef struct node linklist linklist createmptylist 建立空表 p next null...