数据结构之创建单链表

创建单链表

头插法:

typedef struct Linkn
{
   int data;
   struct Linkn *next  
}Linknode;
void *Creatlist(int a[],int n)//建立单链表
{
  Linknode *L=(Linlnode *)malloc(sizeof(Linknode));
  L->next=NULL;//创建头结点

  for(int i=0;i<n;i++)
  {
    Linknode *s=(Linlnode *)malloc(sizeof(Linknode));
    s->data=a[i];//创建后续节点并赋予其值
    s->next=L->next;
    L->next=s;//把s节点插到l后边
  }
    return L;
}

2、尾插法

```c
typedef struct Linkn
{
   int data;
   struct Linkn *next  
}Linknode;
void *Creatlist(int a[],int n)//创建单链表
{
  Linknode *L=(linknode *)malloc(sizeof(Linknode));//创建头结点
  Linknode *s,*r;
  r=L;//使r永远指向单链表的最后一个节点
  for(int i=0;i<n;i++)
  {
    s=(linknode *)malloc(sizeof(Linknode));//创建后续节点
    s->data=a[];//赋值
    r->next=s;
    r=s;
    
  }
  r->next=NULL;//令最后一个节点的next为空
}
发布了7 篇原创文章 · 获赞 0 · 访问量 64

猜你喜欢

转载自blog.csdn.net/m0_46645068/article/details/105189414