单向链表(篇九)

  1. 链表
    (1)引入

(2)节点
节点组成:
数据域:
用来存储基本数据
指针域:
用来存储下一个节点的地址

(3)相关操作
链表是由 N 个节点组成,每个节点在内存中的地址使随机的,不一定连续
链式结构

typedef struct studentInfo
{
	char name[16];
	int age;
	char sex;
	int grade;
}StuInfo;

//信息节点
typedef struct student
{
	struct studentInfo data;	//数据域,存储当前节点信息
	struct student *pNext;		//指针域,存储下一个节点地址
}Stu;

有头链表(有头节点):----->无头链表)
a. 头插法
	每个节点都插入在头节点之后
	
b. 尾插法

c. 头删法
	删除第一个节点,即头节点之后的节点

e. 尾删法

f. 节点的查找
	根据相关信息,查找节点是否存在

g. 节点信息的修改 --- 以姓名为基础,修改年龄

h. 链表的销毁

(4)概念区分:
a. 指针"指向"某个变量
指针的灵活性,使其可以指向任何合法的区域。
指向即保存的地址是相应变量的地址
b. 指针为 NULL
说明指针没有明确指向,未保存地址
不可访问其值。
c. 结构指针
惯用法:
结构指针变量名->成员
d. 头节点
标识链表的作用,其数据域为空,指针域保存第一个节点的地址

	指针域实际就是一个结构指针!!用于保存下一个节点地址		
千里之行,始于足下!
原文地址:https://www.cnblogs.com/MINAIot/p/13041012.html