C 单向链表之动态链表:尾插法
尾插法:在尾节点后插入,每插入一个元素,将其作为尾节点。
一、动态链表
静态链表的意义不是很大,主要是因为数据存储在栈上,栈的存储空间有限,不能动态分配。所以链表要实现存储的自由,要动态申请堆里的空间。
二、动态链表的实现
节点和静态链表节点的定义一样:
typedef struct node
{
int data; //数据域:存储数据
struct node * next; //指针域:指向下一个节点(指向谁,就保存了谁的地址)
}Node;
可将动态链表的结构用如下小火车表示:
实现代码
创建一个动态链表,输入0结束。
#include<stdio.h>
#include<stdlib.h>
typedef struct node
{
int data; //数据域:存储数据
struct node * next; //指针域:指向下一个节点(指向谁,就保存了谁的地址)
}Node;
Node * createList();
int main()
{
Node * head = createList();
Node * pHead &