《数据结构》——线性表的链式表示和实现

记录自己在学习数据结构时遇到的难点,以及对其理解

线性链表的销毁

首先先定义线性表的单链表存储结构:

struct LNode
{
	ElemType data;
	LNode * next;
};
typedef LNode * LinkList;

想要销毁链表,就必须把其所有的成员的内存都释放掉。我学习到的一种方法是从前往后释放结点。

void DestroyList(LinkList &L)
{
	LinkList q;
	// 如果L指向结点非空,则执行循环进行销毁结点
	while(L)
	{
		q = L->next; // q指向首元结点
		free(L); // 释放首元结点
		L = q; // L指向原首元结点
	}
}

具体的销毁流程可以参考下图:
在这里插入图片描述

发布了28 篇原创文章 · 获赞 19 · 访问量 5229

猜你喜欢

转载自blog.csdn.net/weixin_43912972/article/details/102967763