首页 > 其他 > 详细

*单链表[带头结点]

时间:2016-03-15 20:48:36      阅读:222      评论:0      收藏:0      [点我收藏+]

基本结构:

typedef sturct node
{
    int data;
    struct node *next;
}*List,Node;

创建:分为以下几种情况

第一种:先初始化,再创建链表。在初始中,让头结点的next为NULL;

void Init(List &L)
{
    L=(List)malloc(sizeof(Node));
    if(!L)
        exit(-1);
    L->next=NULL;
}

第二种:不初始化,直接创建,又分为以下几种。
<1>尾插法,假如创建n个结点。

void creat(List &L,int n) /*尾插法*/
{
    int e,i;
    List p,s;
    L=(List)malloc(sizeof(Node));
    p=L;
    for(i=0;i<n;i++)
    {
        s=(List)malloc(sizeof(Node));
        cin>>e;
        s->data=e;
        
        p->next=s;
        p=s;
    }
    p->next=NULL; /*尾部指向空*/
}

<2>头插法:不需要额外的指针、

void creat(List &L,int n)/*头插法*/
{
    int e,i;
    List s;
    L=(List)malloc(sizeof(Node));
    L->next=NULL;
    for(i=0;i<n;i++)
    {
        s=(List)malloc(sizeof(Node));
        cin>>e;
        s->data=e;
        
        s->next=L->next;
        L->next=s;
    }
}

 



*单链表[带头结点]

原文:http://www.cnblogs.com/tinaluo/p/5280920.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!