Bootstrap

单链表的建立

一.前言

        单链表的建立一共有两种方法,一种是头插法,将元素插入在链表的头部,也叫前插法。另外一种则就是尾插法,将元素插入在链表尾部,也叫后插法。

二. 头插法

        首先从一个空表开始,重复读入数据;接着生成新结点,将读入的数据存放到新结点的数据域当中;最后从最后一个结点开始,依次将各结点插入到链表的前端。如下所示:

void CreateList(LinkList &L,int n){
    L=new Lnode;
    L->next=NULL;            //先建立一个带头结点的单链表
    for(int i=n;i>0;--i){
        p=new Lnode;
        cin>>p->data;        //输入新结点数据域的值,C语言则使用scanf(&p->data)
        p->next=L->next;    //将新结点插入到表头
        L->next=p;
    }
}

三. 尾插法

        首先从一个空表L开始,将结点逐个插入到链表的尾部,尾指针r指向链表的为结点。初始时,r同L一样,都指向头结点,每读入一个数据元素则申请一个新结点,将新结点插入到尾结点后,r指向新结点。如下所示:

void CreateList(LinkList &L,int n){
    L=new Lnode;
    L->next=NULL;
    r=L;            //尾指针r指向头结点
    for(int i=0;i<n;i++){
        p=new Lnode;        //生成新结点,输入元素值
        cin>>p->data;
        r->next=p;        //插入到表尾
        r=p;            //r指向新的尾结点
    }
}
      
      

 

悦读

道可道,非常道;名可名,非常名。 无名,天地之始,有名,万物之母。 故常无欲,以观其妙,常有欲,以观其徼。 此两者,同出而异名,同谓之玄,玄之又玄,众妙之门。

;