408第一季 - 数据结构 - 线性表II

链表

头节点始终指向第一个

头节点的好处:

第一个好处

这里L是头节点

可以发现,删除第一个也可以统一了

第二个好处

这是无头节点,空和非空指向的不一样

然后有头节点就可以统一了!

双链表

插入

第一步要在第四步之前,不多解释,p一旦改掉了,p->next就没用了

4个链接对应4个代码

删除

上面没有顺序要求

如果不给你q的话这样写

p -> next -> next -> prior = p

p -> next = p -> next -> next

顺序不能换,试试就知道了

无论单链表还是双链表的插入和删除都要找到前面的节点

循环单链表

循环双链表

静态链表

但凡叫什么什么静态 的,都和数组有关系

做题区,崛起!

1

A 顺序反了

B 当只有尾指针这一个节点,尾节点p要改掉,也就是p==q,尾指针 = 头指针 , free(q)

C p!=q

D 选

2

选D,不解释观察法

3

选C,依旧不解释观察法

4

d

最后的顺序表和链表的比较

顺序表可以随机存取

链表修改删除只要修改相关指针

相关推荐
Herbert_hwt6 小时前
C语言零基础入门:循环控制与数据类型详解
c语言·数据结构·算法
晚风醉蝶7 小时前
1-6-插入排序-InsertionSort
java·数据结构·排序算法
Tyler_TXZ7 小时前
C++C语言之——二叉树
c语言·开发语言·数据结构·c++·二叉树
有点。7 小时前
C++二叉树二(练习题)
数据结构·c++·算法·图论
LuminousCPP7 小时前
栈和队列专题(一):LeetCode 20. 有效的括号
数据结构·经验分享·笔记·leetcode·手写栈
白狐_79810 小时前
408 数据结构|线索二叉树两题详解:先序线索化后的空链域 + 中序前驱/后继判断
c语言·数据结构·链表
疯狂打码的少年10 小时前
【数据结构】二叉排序树(BST)的定义与操作
数据结构·笔记·算法
wabs66611 小时前
关于字符串【力扣541.反转字符串II的思考】
数据结构·算法·leetcode·字符串
旖旎夜光12 小时前
LeetCode 30:串联所有单词的子串(滑动窗口) —— 题解
数据结构·c++·算法·leetcode·滑动窗口
白狐_79812 小时前
408 数据结构|完全二叉树两道典型题:第 6 层叶结点数与叶结点总数
数据结构·算法