代码随想录算法训练营Day13, 239. 滑动窗口最大值,347.前 K 个高频元素

本文讲述了作者在解决滑动窗口最大值问题时遇到的思考误区,强调了移除窗口左侧元素的重要性。同时,对前K个高频元素问题的难点在于实际编码实现,反映出对常用方法的缺乏应用。
摘要由CSDN通过智能技术生成

总结

这两道题还是有一定难度的,一刷自己肯定是写不出来的,得重新反复去体会其中的内容和细节

1.滑动窗口最大值

第一道题在思考弹出这个操作的时候想很久,在最开始的时候陷入了思考误区,并没有做出把滑动窗口最左侧的元素进行弹出,而是仅仅依靠add将所有小于进入窗口的元素移除,这样做反而变成求各窗口内的最大元素总和,当窗口较小时,如果没有将最左侧的元素进行弹出,假设后面的元素都是比最左侧的元素要小,那么此时这个最左侧的元素将永远不会进行弹出操作这就不是求滑动窗口最大值的操作了。这个部分细节自己其实忽视了,然后也想了很久花了不少时间在其中,最开始就觉得疑惑,为什么要有这一步操作?在add进行滑动的时候不是已经把所有比新加入元素小的元素全部进行弹出了吗,所以为什么要有这一步?后面才想明白这里的操作

2.前 K 个高频元素

其实这道题的整体思路是不难的,但是对于我目前的情况来说,这道题的难度在于如何用代码自己实现出来,平常用的还是太少,一用到相关的方法就会卡壳,甚至不知道要干什么。

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
代码随想录算法训练营是一个优质的学习和讨论平台,提供了丰富的算法训练内容和讨论交流机会。在训练营中,学员们可以通过观看视频讲解来学习算法知识,并根据讲解内容进行刷题练习。此外,训练营还提供了刷题建议,例如先看视频、了解自己所使用的编程语言、使用日志等方法来提高刷题效果和语言掌握程度。 训练营中的讨论内容非常丰富,涵盖了各种算法知识点和解题方法。例如,在第14天的训练营中,讲解了二叉树的理论基础、递归遍历、迭代遍历和统一遍历的内容。此外,在讨论中还分享了相关的博客文章和配图,帮助学员更好地理解和掌握二叉树的遍历方法。 训练营还提供了每日的讨论知识点,例如在第15天的讨论中,介绍了层序遍历的方法和使用队列来模拟一层一层遍历的效果。在第16天的讨论中,重点讨论了如何进行调试(debug)的方法,认为掌握调试技巧可以帮助学员更好地解决问题和写出正确的算法代码。 总之,代码随想录算法训练营是一个提供优质学习和讨论环境的平台,可以帮助学员系统地学习算法知识,并提供了丰富的讨论内容和刷题建议来提高算法编程能力。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [代码随想录算法训练营每日精华](https://blog.csdn.net/weixin_38556197/article/details/128462133)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值