头插法建立单链表(详解版)

  • Post author:
  • Post category:其他


建立单链表步骤:

1、先建立一个空链表

2、生成一个新结点(p)

3、读入数据到p

4、将新结点插入到头结点

5、反复执行以上三步!

第一种头插法建立的函数:

void createlinklist (Link &H,int n)
{ 
H=(LinkList)malloc(sizrof(LNode));
//malloc(sizeof(LNode))可以理解为建立一个结点,LinkList强制转换类型,H指向这个新开辟的结点 
 
H->next=NULL;//到此就建立了一个空单链表 
   for(i=1;i<=n;i++)
   {
     p=(LinkList)malloc(sizeof(LNode));//生成一个新结点p 
     scanf("%d",&p->data);//读入数据到p 
     p->next=H->next;//将新结点插入到头结点之后 
      H->next=p;//将新结点插入到头结点之后 
    } 
}

第二种头插法建立的函数:

Link createlinklist (int n)//与第一种函数相比函数参数少了Link &H,最后返回&H即可
{ 
H=(LinkList)malloc(sizrof(LNode));
//malloc(sizeof(LNode))可以理解为建立一个结点,LinkList强制转换类型,H指向这个新开辟的结点 
 
H->next=NULL;//到此就建立了一个空单链表 
   for(i=1;i<=n;i++)
   {
     p=(LinkList)malloc(sizeof(LNode));//生成一个新结点p 
     scanf("%d",&p->data);//读入数据到p 
     p->next=H->next;//将新结点插入到头结点之后 
      H->next=p;//将新结点插入到头结点之后 
    } 
return H;//因为这个是返回值
}



版权声明:本文为m0_62677745原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。