代码随想录算法训练营第三天| LeetCode203.移除链表元素、707.设计链表、206.反转链表

发布时间:2024年01月12日


一、203. 移除链表元素

在这里插入图片描述

感受

我对这道题。从理论上来说太熟悉了。咸鱼讲数据结构常用的方法他都会讲。但是我没上机没写过。到后面上机还是写不出来。giao。

代码

第一次写,想说一下,要注意边界值。我第一次的时候,循环的条件就写错了。我写成 while q.next and q.next.next了 认为删除操作,至少要有三个node节点,结果还要单独处理尾节点。

# Definition for singly-linked list.
# class ListNode:
#     def __init__(self, val=0, next=None):
#         self.val = val
#         self.next = next
class Solution:
    def removeElements(self, head: Optional[ListNode], val: int) -> Optional[ListNode]:
        # 如果为空,就直接返回
        if not head:
            return head
        #现在,我们在实现有头结点的版本
        # 现在p就是虚拟头结点了
        p = ListNode(next=head)
        # 新建了一个指针,让他来遍历我们的单链表
        q = p
        while q.
文章来源:https://blog.csdn.net/wish_you_luck/article/details/135562071
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。