大话数据结构:单链表的整表创建

创建单链表的过程就是动态生成链表的过程,从“空表”的初始状态,依次建立各元素结点,并逐个插入链表。

单链表创建的思路:

一、头插法

1.声明一个结点p和计数器变量i
2.初始化一个空链表链表L
*L=(LinkList)malloc(Node)
3.L的头结点的指针指向NULL,即创建一个带有头结点的单链表
4.循环:

   p=(LinkList)malloc(Node)
   p->data=rand()%100+1
   p->Next=(*L)->Next
   (*L)->Next=p  //将p插到头结点和上一结点之间,此处为插入到表头

二、尾插法

1.声明一个结点p,尾结点r,计数器i
2.初始化一个空链表L
3.r指向链表尾部
4.循环

void CreateListTail(LinkList *L,int n)
{
    LinkList p,r;
    int i;
    srand(time(0));
    *L=(LinkList)malloc(Node);
    r=*L;
    for(i=0;i<n;i++)
    {
       p=(LinkList)malloc(Node);
       p->data=rand()%100+1;
       r->Next=p;
       r=p;
    }
    r->Next=NULL;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值