以简单的实例讨论链表的应用
构建一个带头节点的单链表L,使得该链表中存储整型数据的线性表(1,2,3,4,5,6,7,8,9,10);然
后从该链表的第一个元素开始依次输出显示所有元素的值。
实现过程:**
(1)构建带头结点的空链表L:
(2)从链表的尾部依次插入所有数据元素,构建单链表L:
(3)从第一个有效结点开始,依次输出链表L中的所有数据元素:
实现代码:
include “stdio.h”
#include “stdlib.h”
typedef struct Node
{ int data;
Node *next;
}Node,LinkList;
LinkList Create (LinkList L)
{
Node r, s;
int i;
L = (LinkList ) malloc (sizeof(Node));
r = L;
for (i = 1; i <= 10; i ++)
{
s = (Node ) malloc (sizeof(Node));
s -> data = i;
s -> next = NULL;
r -> next = s;
r = s;
}
return L;
}
void main()
{ LinkList L1;
Node p;
L1=Create(L1);
p=L1;
while(p->next!=NULL)
{ p=p->next;
printf(“%4d”,p->data);}
printf(“\n”);
}