代码随想录Day3 | 203.移除链表元素 ,707.设计链表,206.反转链表

55 阅读1分钟

203 移除链表元素

这道题是一个easy题,我们只需要注意一下,当前链表的值如果等于给定的val,我们让上一个节点的下一个节点等于下一个节点,我们可以用虚拟头结点解决也可以在当前链表解决 1.当前链表解决: 我们需要先判断当前链表的头结点的值是否为给定的val,如果是,我们需要跳过并且继续判断!继续判断!继续判断(重要的话说三遍)

代码如下:

image.png image.png

2.我们还可以用虚拟头结点方法 代码如下:

image.png

image.png


707 设计链表

这道题考察了对代码的一个掌控,看起来不难,每个方法都很常见,但实际上对细节的把控非常严苛(我错了5回,全是细节出错~~~~)

代码如下: image.png

image.png image.png

206 反转链表

这道题我们首先要定义一个pre,初始化为空,然后定义一个next节点,用来保存链表当前节点的下一个节点 思路: 我们先把当前节点的下一个节点保存到next上,然后我们把当前节点的next指向pre,然后更新pre的值,最后把cur的值更新为之前保存在next位置上的值,直到循环到cur为空

代码如下:

image.png