带头结点的链表

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了带头结点的链表相关的知识,希望对你有一定的参考价值。

#include<stdio.h>

#include<stdlib.h>

#define N 9

typedef struct node{

   int  data;

   struct node * next;

}ElemSN;

ElemSN  * Createlink(int a[],int n){ 

    int i;

    ElemSN * h, * p;

    h=p=(ElemSN *)malloc(sizeof(ElemSN));

            h->next=NULL;

            for( i=0;i<N;i++){

                  p=p->next=(ElemSN *)malloc(sizeof(ElemSN));

          p->data =a[i];

          p->next=NULL;

     }

return h;

   }

   void printlink(ElemSN * h){

       ElemSN * p;

       for(p=h;p->next;p=p->next)

   printf("%2d ",p->next->data);

      }    

    int main(void){    

int a[N]={1,2,3,4,5,6,7,8,9};

ElemSN * head;

        head=Createlink(a,9);

printlink(head);

    }


以上是关于带头结点的链表的主要内容,如果未能解决你的问题,请参考以下文章

编写不带头结点单链表的插入操作和删除操作算法

带头结点的链表

链表习题-将带头结点的链表进行逆置

数据结构第五章:带头结点的链表

数据结构-1 带头结点的链表合并

循环链表的建立及各种操作