第02期 基础算法(Leetcode)刻意练习开营计划

背景

如果说 Java 是自动档轿车,C 就是手动档吉普。数据结构与算法呢?是变速箱的工作原理。你完全可以不知道变速箱怎样工作,就把自动档的车子从 A 开到 B,而且未必就比懂得的人慢。写程序这件事,和开车一样,经验可以起到很大作用,但如果你不知道底层是怎么工作的,就永远只能开车,既不会修车,也不能造车。如果你对这两件事都不感兴趣也就罢了,数据结构与算法懂得用就好。但若你此生在编程领域还有点更高的追求,数据结构与算法是绕不开的课题。

本期基础算法(Leetcode)刻意练习采用分类别练习的模式,即选择了五个知识点(数组、链表、字符串、树、贪心算法),每个知识点选择了 三个简单两个中等一个困难 等级的题目,共计三十道题,利用三十天的时间完成这组刻意练习。

为了让大家了解如何在CSDN打卡,以及如何在Leetcode上刷题,我在前面写了两篇图文可以参考一下。


知识点1:数组

Task01. 两数之和

  • 难度:简单
  • 网址:https://leetcode-cn.com/problems/two-sum/

Task02. 删除排序数组中的重复项

  • 难度:简单
  • 网址:https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array/

Task03. 移除元素

  • 难度:简单
  • 网址:https://leetcode-cn.com/problems/remove-element/

Task04. 三数之和

  • 难度:中等
  • 网址:https://leetcode-cn.com/problems/3sum/

Task05. 最接近的三数之和

  • 难度:中等
  • 网址:https://leetcode-cn.com/problems/3sum-closest/

Task06. 买卖股票的最佳时机 III

  • 难度:困难
  • 网址:https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock-iii/

知识点2:链表

Task01. 合并两个有序链表

  • 难度:简单
  • 网址:https://leetcode-cn.com/problems/merge-two-sorted-lists/

Task02. 删除排序链表中的重复元素

  • 难度:简单
  • 网址:https://leetcode-cn.com/problems/remove-duplicates-from-sorted-list/

Task03. 环形链表

  • 难度:简单
  • 网址:https://leetcode-cn.com/problems/linked-list-cycle/

Task04. 两数相加

  • 难度:中等
  • 网址:https://leetcode-cn.com/problems/add-two-numbers/

Task05. 删除链表的倒数第N个节点

  • 难度:中等
  • 网址:https://leetcode-cn.com/problems/remove-nth-node-from-end-of-list/

Task06. 合并K个排序链表

  • 难度:困难
  • 网址:https://leetcode-cn.com/problems/merge-k-sorted-lists/

知识点3:字符串

Task01. 罗马数字转整数

  • 难度:简单
  • 网址:https://leetcode-cn.com/problems/roman-to-integer/

Task02. 最长公共前缀

  • 难度:简单
  • 网址:https://leetcode-cn.com/problems/longest-common-prefix/

Task03. 有效的括号

  • 难度:简单
  • 网址:https://leetcode-cn.com/problems/valid-parentheses/

Task04. 无重复字符的最长子串

  • 难度:中等
  • 网址:https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/

Task05. 最长回文子串

  • 难度:中等
  • 网址:https://leetcode-cn.com/problems/longest-palindromic-substring/

Task06. 正则表达式匹配

  • 难度:困难
  • 网址:https://leetcode-cn.com/problems/regular-expression-matching/

知识点4:树

Task01. 相同的树

  • 难度:简单
  • 网址:https://leetcode-cn.com/problems/same-tree/

Task02. 对称二叉树

  • 难度:简单
  • 网址:https://leetcode-cn.com/problems/symmetric-tree/

Task03. 二叉树的最大深度

  • 难度:简单
  • 网址:https://leetcode-cn.com/problems/maximum-depth-of-binary-tree/

Task04. 二叉树的中序遍历

  • 难度:中等
  • 网址:https://leetcode-cn.com/problems/binary-tree-inorder-traversal/

Task05. 不同的二叉搜索树 II

  • 难度:中等
  • 网址:https://leetcode-cn.com/problems/unique-binary-search-trees-ii/

Task06. 恢复二叉搜索树

  • 难度:困难
  • 网址:https://leetcode-cn.com/problems/recover-binary-search-tree/

知识点5:贪心算法

Task01. 买卖股票的最佳时机 II

  • 难度:简单
  • 网址:https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock-ii/

Task02. 判断子序列

  • 难度:简单
  • 网址:https://leetcode-cn.com/problems/is-subsequence/

Task03. 分发饼干

  • 难度:简单
  • 网址:https://leetcode-cn.com/problems/assign-cookies/

Task04. 跳跃游戏

  • 难度:中等
  • 网址:https://leetcode-cn.com/problems/jump-game/

Task05. 加油站

  • 难度:中等
  • 网址:https://leetcode-cn.com/problems/gas-station/

Task06. 通配符匹配

  • 难度:困难
  • 网址:https://leetcode-cn.com/problems/wildcard-matching/

具体规则

  • 注册 CSDN 或 Github 账户。
  • 按照每天发布的任务进行学习,完成后写学习笔记Blog。
  • 在每次任务截止之前填写问卷打卡,遇到问题在群内讨论。
  • 未按时打卡的同学视为自动放弃,被抱出学习群。

总结

该活动,我们计划从 2020年03月01日 开始,如果大家对这个活动感兴趣可以添加小潘同学的微信,让她邀请大家入群。我们不见不散!


往期活动

LSGO软件技术团队会定期开展提升编程技能的刻意练习活动,希望大家能够参与进来一起刻意练习,一起学习进步!


我是 终身学习者“老马”,一个长期践行“结伴式学习”理念的 中年大叔

我崇尚分享,渴望成长,于2010年创立了“LSGO软件技术团队”,并加入了国内著名的开源组织“Datawhale”,也是“Dre@mtech”、“智能机器人研究中心”和“大数据与哲学社会科学实验室”的一员。

愿我们一起学习,一起进步,相互陪伴,共同成长。

后台回复「搜搜搜」,随机获取电子资源!
欢迎关注,请扫描二维码:

发布了573 篇原创文章 · 获赞 327 · 访问量 129万+

猜你喜欢

转载自blog.csdn.net/LSGO_MYP/article/details/104485016