单链表的建立
链表是线性表的一种,一般来说链表就是一系列的存储数据元素的单元通过指针串接起来形成的,常见的链表是单链表和双链表,一个域用于数据元素的存储,另一个或两个域是指向其他单元的指针。对于单链表来说,指针域是一个,指向当前节点的后继节点;双链表来说,一个指针域指向当前节点的后继节点,另外一个指针域指向当前节点的前驱节点。
本文只讨论单链表的情况。单链表的建立分为头插法和尾插法两种。如下:
实现代码如下:
//头插法和尾插法建立链表,整型为例
#include <stdio.h>
#include <stdlib.h>
typedef struct LNode {
int data;
struct LNode *next; //指针域
} LNode,*LinkList;
LinkList HeadCreatList (LNode *L) {
//头插法
printf("正在使用头插法建立链表,请输入数据(-1结束):\n");
L=(LinkList)malloc(sizeof(LNode));
LNode *s;
L->next=NULL;
int t;
scanf