文章目录
前言
本文给出了单链表的初始化(带头结点、不带头结点)、结点的定义(两种方式)、头指针 L 的两种命名方式及区别,它们的代码及相应图示助于理解,代码实现使用的是C语言在线工具。无概念解释,初学者建议配合书本食用。
【如果图片看不清楚,网页版是很清晰的。😦】
一、单链表结点的定义(两种方式)
//方式一
typedef struct LNode{
//定义单链表结点类型
ElemType data; //数据域,每个结点存放一个数据元素
struct LNode *next; //指针域,指针指向下一个结点
}LNode, *LinkList;
//方式二
struct LNode{
//定义单链表结点类型
ElemType data; //数据域,每个结点存放一个数据元素
struct LNode *next; //指针域,指针指向下一个结点
};
typedef struct LNode LNode; //typedef给数据类型struct LNode重命名为LNode
typedef struct LNode *LinkList; //并且用LinkList表示这是指向struct LNode类型的指针
二、头指针L的两种命名方式及区别
单链表在内存中是这样的: