當前位置:編程學習大全網 - 編程軟體 - 幫我用C語言寫壹個數據結構中單鏈表的建立和插入以及刪除操作,就只寫這三個操作,小弟是新手謝謝各位了

幫我用C語言寫壹個數據結構中單鏈表的建立和插入以及刪除操作,就只寫這三個操作,小弟是新手謝謝各位了

#include<stdio.h>

#include<malloc.h>

typedef struct Node //定義節點

{

int data; //可以為其他類型

struct Node *next;

}List;

void create(struct Node *&L,int a[],int n) //創建,L是鏈表頭,a是要插入數組,n是要插入元素個數

{

List *s;

int i;

L=(List *)malloc(sizeof(List));

L->next=NULL;

for(i=0;i<n;i++)

{

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

s->data=a[i];

s->next=L->next;

L->next=s;

}

}

int insert(List *&L,int i,int e) //插入,i是插入位置,e是插入的值

{

int j=0;

List *p=L,*s;

while(j<i-1&&p!=NULL)

{

j++;

p=p->next;

}

if(p==NULL)

return 0;

else

{

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

s->data=e;

s->next=p->next;

p->next=s;

return 1;

}

}

int delete(List *&L,int i,int &e)//i是要刪除元素的位置,e保存被刪除元素的值

{

int j=0;

List *p=L,*q;

while(j<i-1&&p!=NULL)

{

j++;

p=p->next;

}

if(p==NULL)

return 0;

else

{

q=p->next;

if(q==NULL)

return 0;

e=q->data;

p->next=q->next;

free(p);

return 1;

}

}

  • 上一篇:scratch desktop克隆體如何出現在自己的位置
  • 下一篇:Linux 系統下圖形界面用那種語言開發最合適?
  • copyright 2024編程學習大全網