單鏈表操作

2021-04-07 06:55:41 字數 2264 閱讀 2901

#include"stdio.h"

#include"malloc.h"

#include

#define n 10  /*代表要處理的元素個數 可以誰使用者的意思修改*/

#define ok  1

#define overflow 0

typedef int elemtype;

typedef int status;

typedef struct node

node,*linklist;

//////初始化單鏈表

///status initlinklist(node **l) 

printf("請輸入元素個數為%d/n",n); /*元素個數為n*/

(*l)->next = null;

p = (*l);

for (i = n; i > 0; i--)

scanf("%d",&(q->data));

q->next = null;

p->next = q;

p = q;

k++;

}return ok;

}///

//對單鏈表的元素進行排序

///status linklistsort(linklist *l) 

p = p->next;

}i++;

}return ok;}//

刪除相同的元素

//status deletesameelement (linklist *l)

p = p->next;

}k = k->next;

p = k;

}return ok;}/

///對單鏈表中的元素倒置以前寫的演算法 太臭

/////*status linklistreverse(linklist *l)  

/* lb=(linklist)malloc(sizeof(node));   /*重新建立乙個單鏈表 將倒置後的元素放在lb中*/

/* lb->next=null;

p=lb;

for(i=count-1;i>=0;i--)

q->data=a[i];

q->next=null;

p->next=q;

p=q;}}

p=lb->next;               /*輸出倒置後的單鏈表*/

/*while(p!=null)

return ok;

}*///

/ / 對單鏈表中的元素倒置

status linklistreverse(linklist *l)

q->next = p;

s->next = q;

(*l)->next = s;

return ok;

//釋放接點

status freelinklist(linklist *l)  

return ok;

}列印出單鏈表

status printlinklist(linklist l)

printf("%4d",p->data);

p = p->next;

}getchar();

return ok;

}int main(void)        /*選單*/

while (select > 6 && select < 0);

if(flag == 0)

break;

switch(select)

else

printf("對不起!您還沒建立單鏈表/n請先建立單鏈表");

break;     

case 2:

if (e == 1)

else

printf("對不起!您還沒建立單鏈表/n請先建立單鏈表"); 

break;

case 3:

if(e == 1)

else

printf("對不起!您還沒建立單鏈表/n請先建立單鏈表"); 

break;

case 4: 

if (e == 1)

else

break;

case 5:

if (e == 0)

else

break;

default:

printf("對不起您選擇的數字有誤 請重新輸入");

break;}}

system("pause");

return 0;

}修改了一下

單鏈表操作

include include typedef struct node tag node 建立不帶頭結點的單鏈表 node createnode else p q scanf d n 函式體結束,q指標變數被釋放,不能通過head引數帶回到呼叫函式 要把head帶回到呼叫函式,要把它定義為指向指標的...

單鏈表操作

這一次補上鍊表的注釋,是空閒的時候敲出來的,如果有錯,希望幫忙糾正 部分給出了詳細說明,這裡只選取了基本操作,因為更複雜的鍊錶操作太繁瑣,這裡就不寫了 如果有什麼不懂的地方,可以隨時詢問 include using namespace std typedef int elemtype struct ...

單鏈表操作

資料結構上機測試 2 1 單鏈表操作 atimelimit 1000ms memory limit 4096k 題目描述輸入n 個整數,先按照資料輸入的順序建立乙個帶頭結點的單鏈表,再輸入乙個資料 m,將單鏈表中的值為 m的結點全部刪除。分別輸出建立的初始單鏈表和完成刪除後的單鏈表。輸入第一行輸入資...