Day 3 打卡第三天

这篇具有很好参考价值的文章主要介绍了Day 3 打卡第三天。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

203.移除链表元素

给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 。 

示例 1:

Day 3 打卡第三天

输入:head = [1,2,6,3,4,5,6], val = 6
输出:[1,2,3,4,5]

示例 2:

输入:head = [], val = 1
输出:[]

示例 3:

输入:head = [7,7,7,7], val = 7
输出:[]

提示:

  • 列表中的节点数目在范围 [0, 104] 内
  • 1 <= Node.val <= 50
  • 0 <= val <= 50
class Solution {
public:
    ListNode* removeElements(ListNode* head, int val) {
        //如果头节点存在且值为目标值
        while(head && head->val == val) head = head->next;
        auto p = head;
        while(p){
            //如果当前节点的下一个节点存在
            while(p->next && p->next->val == val) p->next = p->next->next;
            p = p->next;
        }
        return head;
    }
};

目标值在链表开头需特判,搞清楚逻辑关系

707. 设计链表

有点多 回去看一下 基础不太牢固 重温了一下翁恺的C++视频

https://www.bilibili.com/video/BV1dE41167hJ?p=9&vd_source=7b38658adcfed42fe1f83c49f215e826

206. 反转链表

之前做过几遍,每次做都卡壳QAQ文章来源地址https://www.toymoban.com/news/detail-472236.html

class Solution {
public:
    ListNode* reverseList(ListNode* head) {
        while(!head) return NULL;
        auto a = head, b = head->next;
        while(b){
            auto c = b->next;
            b->next = a;
            a = b;
            b = c;
        }
        head->next = NULL;
        return a ;
    }
};

到了这里,关于Day 3 打卡第三天的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包