数据结构 第21课 线性表的链式存储结构------------------狄泰软件学院

前辈的文章:线性表的链式存储结构

笔记:
双向链表:
每一个元素都保存前驱和后继,
第一个保存的前驱为空,  最后一个后继为空;

头节点: 
没什么用,但是在工程实践中发现,如果在写链表的时候增加一个辅助的头节点,
那么就可以简化代码的编写,代码简单了,维护性就变好了;

尾节点:
所包含的地址信息,直接决定了链表的性质;

链表:  
删除:
先链接,再删除;

关于节点插入和删除的理解

节点1:
数据+地址(指的是下一个地址)

节点2:
(是节点1所指向的地址)数据+地址

所以: 节点1的指针指向地址 和 节点2的数据所在位置是一样的,就不难理解以下代码了;

数据插入:
node->value = e;
node->next = current->next;
current->next = node;

删除同理;;;;;;;;;;;;;;;;

    
struct Node : public Object
{
    
    
	T value;     //  泛指 表明可以保存各种类型的数据元素
	Node* next;  // 指针保存一个地址,这个地址是当前节点的直接后继节点的地址(保存的是下一个节点的地址)
}

猜你喜欢

转载自blog.csdn.net/dashuu/article/details/114792210