秋招突击——6/21——新作{两两交换链表中的节点,K个一组反转链表}

news2024/11/25 22:40:54

文章目录

    • 引言
    • 新做
      • 删除有序数组中的重复项
        • 个人实现
      • K 个一组翻转链表
        • 个人实现
        • 参考代码
    • 总结

引言

  • 上午完全去听讲座了,听了三场,拿了三个讲座单,从九点一直到十二点。笔记本电脑插电才能用,就没带,所以没有进行复习。只有晚上的新作。

新做

删除有序数组中的重复项

  • 题目链接
    在这里插入图片描述
    在这里插入图片描述
个人实现
  • 非严格递增序列,原地删除重复出现的元素,每一个元素只出现一次
  • 元素的相对顺序保持一致,返回nums中唯一元素的个数
    要求
  • 前k个元素包含唯一的元素,其余的元素与nums大小不重要
  • 返回K

这个题目注意

  • 和之前的一样,这道题要看清楚,我就觉得奇怪,原来他妈的昨天做过了,我靠。

具体实现

  • index,不同的元素复制过来,如果相同的元素直接跳过。
class Solution {
public:
    int removeDuplicates(vector<int>& nums) {
            int idx = 0;
    for (int i = 0; i < nums.size(); ) {
        nums[idx] = nums[i];
        idx ++ ,i ++;
        while(i < nums.size() && nums[i] == nums[i - 1]) i ++;
    }
    return idx;
    }
};

K 个一组翻转链表

在这里插入图片描述
在这里插入图片描述

个人实现
  • 拆解问题,这个可以拆解成子链表反转 + 遍历到第K个链表。

  • 子链表反转

    • 三个指针节点a,b,c。然后交换a和b,使用c记录对应的下一个链表的内容
  • 遍历k个链表

    • 使用k进行遍历,然后获取对应的值,这个主要是获取需要改变的头结点,然后在进行遍历
  • 有点心神不宁,有点烦躁,不是很想写了,有点烦,所以暂时就这样吧。

  • 卡在了怎么保证找到第k个节点的头节点是啥

下述代码没有调整过,只是有点心神不宁,心烦意乱,内心难以平静

  • 总的来说,大概逻辑是实现的,但是没有调通。
 ListNode* reverseKGroup(ListNode* head, int k) {
    int idx = 0;
    auto dummy = new ListNode();
    dummy->next = head;

    // 这里是要遍历k次,然后再往后进行遍历
    auto  l = dummy,r = dummy;
    while (r){
        r = r->next,idx ++;
        if (idx == k - 1) {
            auto a = l,b = l->next,c = l->next->next;
            do {
                b->next = a;
                c = c->next;
                a = b;
                b = c;
            }while(c == r);
            idx = 0;
            l = r;
        }
    }
}

在这里插入图片描述

参考代码

思路分析

  • 他是从整体的角度出发的,具体步骤如下
    • 先是交换的邻接节点的指针,让他反转
    • 然后在交换的对应的头结点,保证首尾节点的连接相关性

具体步骤如下

  • 先往后遍历k次 ,如果可以的话,就跳过
  • 然后更换对应的邻接节点的指针

在这里插入图片描述

ListNode* reverseKGroup(ListNode* head , int k){
    auto dummy = new ListNode(-1);
    dummy->next = head;
    for (auto p = dummy;;) {

        // 这里是向后遍历k次,判定当前这个阶段能否进行遍历
        auto q = p;
        for (int i = 0; i < k && q; ++i) q = q->next;
        if (!q) break;

        // 定义邻接节点反转指针
        auto  a = p->next ,b = a->next;
        for (int i = 0; i < k - 1; ++i) {
            // 保存b的后继节点
            auto c = b->next;
            // 反转b的next节点方向
            b->next = a;
            // 然后的三个指针向后迁移
            a = b,b = c;
        }

        // 反转首尾节点的指向
        auto c = p->next;
        p->next = a,c->next = b;
        p = c;
    }

    return dummy->next;
}

总结

  • 昨天就做了一道题,两道题,拖到了今天早上才发,不行呀!不过昨晚,解决了我内心的一根刺,心情好了很多的。
  • 继续加油!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1849319.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

GIT回滚

1. 使用 git revert git revert 命令会创建一个新的提交&#xff0c;这个提交会撤销指定提交的更改。这通常用于公共分支&#xff08;如 main 或 master&#xff09;&#xff0c;因为它不会重写历史。 git revert HEAD # 撤销最近的提交 # 或者指定一个特定的提交哈希值 …

一句话、10秒,我用Claude 3.5 Sonnet生成了完整的俄罗斯方块!

大家好&#xff0c;我是木易&#xff0c;一个持续关注AI领域的互联网技术产品经理&#xff0c;国内Top2本科&#xff0c;美国Top10 CS研究生&#xff0c;MBA。我坚信AI是普通人变强的“外挂”&#xff0c;所以创建了“AI信息Gap”这个公众号&#xff0c;专注于分享AI全维度知识…

大模型项目落地时,该如何估算模型所需GPU算力资源

近期公司有大模型项目落地。在前期沟通时,对于算力估算和采购方案许多小伙伴不太了解,在此对相关的算力估算和选择进行一些总结。 不喜欢过程的可以直接 跳到HF上提供的模型计算器 要估算大模型的所需的显卡算力,首先要了解大模型的参数基础知识。 大模型的规模、参数的理解…

没等来百度惊艳的All in AI,却等来了国产之光的盘古大模型 5.0

6月21日&#xff0c;华为开发者大会&#xff08;HDC 2024&#xff09;在广东东莞正式开幕。盘古大模型5.0的更新&#xff0c;也是此次HDC2024的另一项重头戏。在过去的一年中&#xff0c;盘古大模型正在疯狂向各行各业渗透。 此次&#xff0c;华为方面展示了他们在具身智能、医…

细说MCU输出两路PWM波形及改变占空比的实现方法

目录 一、硬件及工程 二、建立工程 三、代码修改 四、下载运行 五、改变PWM波形占空比 1、定义两个全局变量 2、启动定时器 3、重写TIM3中断回调函数 六、下载并运行 一、硬件及工程 文章依赖的硬件及工程配置参考本文作者的其他文章&#xff1a;细说ARM MCU的串口接…

win制作git局域网仓库,克隆

仓库目录制作成共享文件 共享目录\USER-20230725LO 然后win使用git克隆\USER-20230725LO\git\wbrj

天马学航——智慧教务系统(移动端)开发日志八

天马学航——智慧教务系统(移动端)开发日志八 日志摘要&#xff1a;完成了对用户主界面的优化&#xff0c;再次优化数据库缓存&#xff0c;使数据库读写分离 优化主界面 优化用户界面&#xff0c;使界面看起来更加亲切贴合 主要源码 build() {Row() {Column({space:30}) {Te…

【Java】已解决java.io.InterruptedIOException异常

文章目录 一、分析问题背景二、可能出错的原因三、错误代码示例四、正确代码示例五、注意事项 已解决java.io.InterruptedIOException异常 在Java中&#xff0c;java.io.InterruptedIOException异常通常与I/O操作被中断有关。这种中断可能由多种因素引起&#xff0c;如线程被中…

发布微信小程序需要icp证吗?

微信小程序需要办理ICP许可证吗&#xff1f; 微信小程序需不需要办理ICP许可证&#xff0c;具体要看你的小程序类目是什么&#xff0c;还要看你的小程序具体是做什么的&#xff1f; 根据《互联网信息服务管理办法》 第四条 国家对经营性互联网信息服务实行许可制度&#xff1b…

超级干货 !数据平滑9大妙招(python版)_python指数平滑预测案例

大家好&#xff0c;对数据进行平滑处理的方法有很多种&#xff0c;具体的选择取决于数据的性质和处理的目的。如果你对Python感兴趣&#xff0c;想要学习pyhton&#xff0c;这里给大家分享一份**Python全套学习资料**&#xff0c;都是我自己学习时整理的&#xff0c;希望可以帮…

体验一下 Claude 3.5 Sonnet

体验一下 Claude 3.5 Sonnet 0. 引言1. Artifacts - 使用 Claude 的新方式2. 体验一下 Claude 3.5 Sonnet 0. 引言 2024年6月21日&#xff0c;Anthropic 推出 Claude 3.5 Sonnet&#xff0c;这是即将推出的 Claude 3.5 型号系列中的第一个版本。 Claude 3.5 Sonnet 提高了行业…

Nature | 解锁大脑运动控制机理!哈佛大学与DeepMind实现「AI大脑」控制虚拟老鼠

近日&#xff0c;哈佛大学的研究人员与谷歌DeepMind AI 实验室合作&#xff0c;开发出了一种虚拟大鼠模型&#xff0c;以研究大脑如何控制真实老鼠的运动。这个创新的模型准确地模拟了在真实大鼠身上观察到的神经活动&#xff0c;可以用于探讨大脑是如何控制动物的运动行为。 …

web系统数据库敏感数据处理

一、前言 web系统数据库中保存的公民信息不允许明文存储&#xff0c;比如手机号&#xff0c;身份证号&#xff0c;收货地址等。 二、处理方式 数据库中密文存储&#xff0c;web通过注解的方式对数据加解密处理&#xff0c;下面是处理方法 1、编写接口 public interface E…

借助AI营销类API,实现自动化的营销流程

借助AI营销类API&#xff0c;企业可以实现自动化的营销流程&#xff0c;提高效率和效果&#xff0c;并节省大量的时间和资源。这些API利用人工智能和机器学习的技术&#xff0c;能够自动化地执行各种营销任务和流程。首先&#xff0c;AI营销类API可以帮助企业实现自动化的市场调…

Linux【实操篇-文件权限和搜索查找类命令】

07 【实操篇-文件权限和搜索查找类命令】 1.文件权限类 1.1 权限管理的重要性 和 Windows 系统不同&#xff0c;Linux 系统为每个文件都添加了很多的属性&#xff0c;最大的作用就是维护数据的安全。举个简单的例子&#xff0c;在你的 Linux 系统中&#xff0c;和系统服务相…

外星人Alienware m18R1 原厂Windows11系统

装后恢复到您开箱的体验界面&#xff0c;包括所有原机所有驱动AWCC、Mydell、office、mcafee等所有预装软件。 最适合您电脑的系统&#xff0c;经厂家手调试最佳状态&#xff0c;性能与功耗直接拉满&#xff0c;体验最原汁原味的系统。 原厂系统下载网址&#xff1a;http://w…

【国际化I18n使用方法】vue2使用i18简单实现多语种切换,刷新保持,动态数据处理

效果图 使用流程 总结就是&#xff0c;安装好插件后&#xff0c;配置几个语言的js文件&#xff0c;每个词都要在每个js内写一遍对应的语言&#xff0c;然后通过切换js文件拿到对应的语言&#xff0c;实现翻译的效果。然后当前使用什么语言保存到本地&#xff0c;这样刷新就可以…

移动端+PC端应用模式的智慧城管综合执法办案平台源码,案件在线办理、当事人信用管理、文书电子送达、沿街店铺分析

城市管理综合执法管理平台实现执法办案、业务全流程在线办理&#xff0c;依托移动端PC端的“两端”应用模式&#xff0c;保障能够通过信息化手段进行日常的执法办案工作&#xff0c;强化执法监督功能。提供了案件在线办理、当事人信用管理、文书电子送达、沿街店铺分析等功能&a…

python数据分析-糖尿病数据集数据分析预测

一、研究背景和意义 糖尿病是美国最普遍的慢性病之一&#xff0c;每年影响数百万美国人&#xff0c;并对经济造成重大的经济负担。糖尿病是一种严重的慢性疾病&#xff0c;其中个体失去有效调节血液中葡萄糖水平的能力&#xff0c;并可能导致生活质量和预期寿命下降。。。。 …

Elasticsearch中的post_filter后置过滤器技术

Hi~&#xff01;这里是奋斗的小羊&#xff0c;很荣幸您能阅读我的文章&#xff0c;诚请评论指点&#xff0c;欢迎欢迎 ~~ &#x1f4a5;&#x1f4a5;个人主页&#xff1a;奋斗的小羊 &#x1f4a5;&#x1f4a5;所属专栏&#xff1a;C语言 &#x1f680;本系列文章为个人学习…