I really wanna stop,but I just gotta taste for it.

目录标题

  • 第01课丨数据结构与算法总览
    • 1). 数据结构脑图
    • 2). 自己画的脑图:(感觉有些凌乱,之后会逐步进行补充,完善,整理)
    • 3). 其中的一些分支,之前有画一些小型分类的脑图:
  • 第02课丨训练准备和复杂度分析
    • 如何理解算法时间复杂度的表示法
  • 第03课丨数组、链表、跳表
    • 数组:
    • 链表:
  • 第04课丨栈、队列、优先队列、双端队列
  • 第05课丨哈希表、映射、集合
  • 第06课丨树、二叉树、二叉搜索树
  • 第07课丨泛型递归、树的递归
  • 第08课丨分治、回溯
  • 第09课丨深度优先搜索和广度优先搜索
  • 第10课丨贪心算法
  • 第11课丨二分查找
  • 第12课丨动态规划(重点!!!!!!!!!)
  • 第13课丨字典树和并查集
  • 第14课丨高级搜索
  • 第15课丨红黑树和AVL树
  • 第16课丨位运算
  • 第17课丨布隆过滤器和LRU缓存
  • 第18课丨排序算法
  • 第19课丨高级动态规划
  • 第20课丨字符串算法

对极客大学算法训练营的题目做一个分类,方便后续查看。

第01课丨数据结构与算法总览

1). 数据结构脑图

数据结构和算法脑图

2). 自己画的脑图:(感觉有些凌乱,之后会逐步进行补充,完善,整理)

链接:数据结构和算法脑图.note

3). 其中的一些分支,之前有画一些小型分类的脑图:

数据结构基础脑图:数据结构基础脑图.note

树 的 脑图:树的脑图.note

排序算法脑图:排序算法脑图.note

第02课丨训练准备和复杂度分析

如何理解算法时间复杂度的表示法

•如何理解算法时间复杂度的表示法

第03课丨数组、链表、跳表

数组:

简单:

LeetCode - 1.两数之和(暴力,哈希)2

LeetCode - 66. 加一(数学、数组)

中等:

LeetCode - 11. 盛最多水的容器 2

链表:

第04课丨栈、队列、优先队列、双端队列

简单:

LeetCode - 20.有效的括号(栈) 1

LeetCode - 155.最小栈

LeetCode - 剑指 Offer 59 - I. 滑动窗口的最大值(双端队列)

LeetCode -844. 比较含退格的字符串(栈、双指针)

第05课丨哈希表、映射、集合

简单:

LeetCode - 1.两数之和(暴力,哈希)2

LeetCode - 202. 快乐数(快慢指针、哈希表)——快慢指针、判断链表是否有环

LeetCode - 169.多数元素(哈希表、分治)【map的几种遍历方式】

LeetCode - 242.有效的字母异位词(逻辑暴力,排序,哈希) 3

LeetCode - 1160.拼写单词(哈希表)

LeetCode - 1207. 独一无二的出现次数(哈希表)

LeetCode - 1365. 有多少小于当前数字的数字(哈希表、排序)

中等:

LeetCode - 15. 三数之和 2

LeetCode - 49. 字母异位词分组(哈希)2

LeetCode - 36. 有效的数独(哈希表)

第06课丨树、二叉树、二叉搜索树

LeetCode - 94、144、145. 二叉树的前、中、后序遍历(不咋会,需要多看)重点!!

LeetCode - 589. N叉树的前序遍历、后序遍历、层序遍历(递归、迭代)

LeetCode - 235. 二叉搜索树的最近公共祖先(树的遍历,一次遍历、两次遍历)

LeetCode - 236. 二叉树的最近公共祖先(树的遍历)

第07课丨泛型递归、树的递归

简单:

LeetCode - 70. 爬楼梯(人肉递归、动态规划)2

LeetCode - 104.二叉树的最大深度(递归)1 (需要补充迭代的代码)

LeetCode - 111.二叉树的最小深度(递归)1 (需要补充迭代的代码)

LeetCode - 226.翻转二叉树(迭代、递归)2

中等:

LeetCode - 22. 括号的生成(递归)1

LeetCode - 98. 验证二叉搜索树(迭代、递归)2

  • 236. 二叉树的最近公共祖先

  • 105. 从前序与中序遍历序列构造二叉树

  • 77. 组合

  • 46. 全排列

  • 47. 全排列 ii

困难:

  • 297. 二叉树的序列化与反序列化

第08课丨分治、回溯

LeetCode - 50. Pow(x,n) 计算 x 的 n 次幂函数(递归,分治的思想)

LeetCode - 78. 子集(迭代、递归)

LeetCode 17. 电话号码的字母组合(回溯、递归)

LeetCode - 37. 解数独(回溯法)

LeetCode - 51. N 皇后(回溯法)

第09课丨深度优先搜索和广度优先搜索

中等:

LeetCode 102. 二叉树的层序遍历(广度优先遍历BFS)

Leetcode - 515. 在每个树行中找最大值 (BFS、DFS)

  • 433. 最小基因变化

  • 22. 括号生成

  • 200. 岛屿数量

  • 127. 单词接龙

第10课丨贪心算法

简单:

LeetCode - 455. 分发饼干(贪心 + 双指针)

LeetCode - 122. 买卖股票的最佳时机II(贪心算法、数组、动态规划)

860. 柠檬水找零

874. 模拟行走机器人

中等:

LeetCode - 55. 跳跃游戏(贪心)

困难:

45. 跳跃游戏 II

第11课丨二分查找

简单:

LeetCode - 69. x 的平方根(二分查找、牛顿法)

LeetCode - 367. 有效的完全平方数(二分查找、牛顿法)

中等:
LeetCode - 74. 搜索二维矩阵(二分法)

LeetCode - 33. 搜索旋转排序数组(暴力、二分)

  • 153. 寻找旋转排序数组中的最小值

第12课丨动态规划(重点!!!!!!!!!)

中等:

LeetCode - 53. 最大子序和(分治、动态规划)---- 题解 python

LeetCode - 62. 不同路径 (动态规划、递归、自底向上)

LeetCode - 63. 不同路径II(动态规划、递归)

LeetCode - 70. 爬楼梯(人肉递归、动态规划)2

LeetCode - 120. 三角形最小路径和(动态规划、递归、记忆搜索)

LeetCode - 152. 乘积最大子数组(动态规划)

LeetCode - 322. 零钱兑换(递归、记忆化搜索、动态规划、广度优先)

LeetCode - 1143. 最长公共子序列(动态规划)

LeetCode - 面试题 01.05. 一次编辑(动态规划)

实战题目
LeetCode - 198. 打家劫舍(动态规划)——(程序员面试金典 - 面试题 17.16. 按摩师)

  • 213. 打家劫舍 II

  • 121. 买卖股票的最佳时机

  • 122. 买卖股票的最佳时机 II

  • 123. 买卖股票的最佳时机 III

  • 309. 最佳买卖股票时机含冷冻期

  • 188. 买卖股票的最佳时机 IV

  • 714. 买卖股票的最佳时机含手续费

高级 DP 实战题目

  • 279. 完全平方数

  • 72. 编辑距离 (重点)

  • 55. 跳跃游戏

  • 45. 跳跃游戏 II

  • 62. 不同路径

  • 63. 不同路径II

  • 980. 不同路径 III

  • 322. 零钱兑换

  • 518. 零钱兑换 II

  • 32. 最长有效括号

  • 64. 最小路径和

  • 72. 编辑距离

  • 91. 解码方法

  • 221. 最大正方形

  • 363. 矩形区域不超过 K 的最大数值和

  • 403. 青蛙过河

  • 410. 分割数组的最大值

  • 552. 学生出勤记录 II

  • 621. 任务调度器

  • 647. 回文子串

  • 76. 最小覆盖子串

  • 312. 戳气球

第13课丨字典树和并查集

字典树:

LeetCode - 208. 实现 Trie (前缀树)(字典树)

  • 212. 单词搜索 II

并查集:

  • LeetCode - 547. 朋友圈(并查集、深度优先遍历)
  • 200. 岛屿数量
  • 130. 被围绕的区域

第14课丨高级搜索

【极客大学-算法训练营】高级搜索:剪枝、双向BFS、启发式搜索(A*)

剪枝:

• 70. 爬楼梯
• 22. 括号生成
• 51. N 皇后
• 36. 有效的数独
• 37. 解数独

双向BFS:

• 127. 单词接龙
• 433. 最小基因变化

启发式搜索(A*):

• 1091. 二进制矩阵中的最短路径
• 773. 滑动谜题
• 37. 解数独

第15课丨红黑树和AVL树

AVL和红黑树的一些概念

第16课丨位运算

LeetCode - 按标签分类刷题(位运算题解)

  • 191. 位1的个数
  • 231. 2的幂
  • 190. 颠倒二进制位
  • 51. N 皇后
  • 52. N 皇后II
  • 338. 比特位计数

第17课丨布隆过滤器和LRU缓存

布隆过滤器和LRU Cache的一些概念

LeetCode - 146. LRU 缓存机制(不会,重点!!!!)

第18课丨排序算法

  • 1122. 数组的相对排序

  • 242. 有效的字母异位词

  • LeetCode - 56. 合并区间(排序算法)

  • LeetCode - 493. 翻转对(归并排序)

第19课丨高级动态规划

第20课丨字符串算法

可参考链接:【庄小炎】字符串算法

字符串基础问题

  • 709. 转换成小写字母
  • 58. 最后一个单词的长度
  • 771. 宝石与石头
  • 387. 字符串中的第一个唯一字符
  • 8. 字符串转换整数 (atoi)

题解: LeetCode - 字符串基础问题(另附以上题目解析)

字符串操作问题

  • 14. 最长公共前缀
  • 344. 反转字符串
  • 541. 反转字符串 II
  • 151. 翻转字符串里的单词
  • 557. 反转字符串中的单词 III
  • 917. 仅仅反转字母

题解:LeetCode - 字符串操作问题(另附以上题目解析)

异位词问题

  • 242. 有效的字母异位
  • 49. 字母异位词分组
  • 438.找到字符串中所有字母异位词

LeetCode - 异位词问题(另附以上题目解析)

回文串问题

  • 125. 验证回文串
  • 680. 验证回文字符串 Ⅱ
  • 5. 最长回文子串

LeetCode - 回文串问题(另附以上题目解析)

最长子串、子序列问题

  • 1143. 最长公共子序列
  • 72. 编辑距离
  • 5. 最长回文子串

字符串 +DP 问题

  • 10. 正则表达式匹配
  • 44. 通配符匹配
  • 115. 不同的子序列

字符串课后作业:

  • https://leetcode-cn.com/problems/first-unique-character-in-a-string/
  • https://leetcode-cn.com/problems/string-to-integer-atoi/
  • https://leetcode-cn.com/problems/reverse-string-ii/
  • https://leetcode-cn.com/problems/reverse-words-in-a-string/
  • https://leetcode-cn.com/problems/reverse-words-in-a-string-iii/
  • https://leetcode-cn.com/problems/reverse-only-letters/
  • https://leetcode-cn.com/problems/find-all-anagrams-in-a-string/
  • https://leetcode-cn.com/problems/longest-palindromic-substring/
  • https://leetcode-cn.com/problems/isomorphic-strings/
  • https://leetcode-cn.com/problems/valid-palindrome-ii/
  • https://leetcode-cn.com/problems/wildcard-matching
  • https://leetcode-cn.com/problems/longest-valid-parentheses
  • https://leetcode-cn.com/problems/distinct-subsequences/

极客时间_算法训练营(代码实现汇总)相关推荐

  1. 极客时间_软件设计之美 笔记

    极客时间_软件设计之美 笔记 1.软件设计是什么 写代码前应该有模型设计 比如mvc结构就是一种模型 代码应该有规范, 产品内部原则 避免每个开发按自己的想法实现,有人写rest 有人写mvc 代码模 ...

  2. 【算法笔记】极客时间 算法面试通关40讲 笔记  覃超

    [算法笔记]极客时间 算法面试通关40讲 覃超 [算法笔记]极客时间 算法面试通关40讲 覃超 相关链接 在leetcode 上的题号 数组.链表: (堆)栈stack.队列queue 优先队列 哈希 ...

  3. 测试 极客时间_针对数据极客和记者测试DocHive

    测试 极客时间 呼吁所有数据极客和发烧友! 测试现已在DocHive 上开放- 从GitHub开始 . DocHive是一个开源的Ruby on Rails项目,用于从基于图像的PDF捕获数据. Do ...

  4. 极客时间Go实战训练营zui新

    JK - go实战Xun练赢 下–栽のURL:ukoou.com/resource/1258 go实战xly-微服务框架RPC Go 语言的 RPC 包的路径为 net/rpc,也就是放在了 net ...

  5. [极客时间]《算法面试通关40讲》

    算法面试通关40讲 第1课 算法与数据结构 1.1麦穗理论 1.2 硅谷工作 1.3 比特币结构 单向链表 每一个交易的记录是二叉树,这样存的好处是 只要根据根节点就可以查询到所有的节点之和是否被篡改 ...

  6. 极客时间大数据训练营知识总结脑图

  7. 笔记1 第11课 贪心初步 ——柠檬水找零,分发饼干,跳跃游戏,完成所有任务所需最小能量——极客时间算法

    之前收藏了极客时间的算法训练营3期 共21课,计划每一课写博客来记录学习,主要形式为 方法类型1 题1 题解 题2 题解 方法类型2 题1 题解 -- 题目大体来自leetcode 和 acwing ...

  8. 笔记1 第13课 动规2 ——买卖股票最佳时机,打家劫舍,零钱找兑——极客时间算法

    之前收藏了极客时间的算法训练营3期 共21课,计划每一课写博客来记录学习,主要形式为 方法类型1 题1 题解 题2 题解 方法类型2 题1 题解 -- 题目大体来自leetcode 和 acwing ...

  9. 极客时间和极客学院_极客奔跑

    极客时间和极客学院 I'm not a natural runner. I'm reasonably fit given that I spend most of the day sat in my ...

  10. 极客时间-算法训练营1.2 实战题目解析:移动零

    一 序 本文属于极客时间-算法训练营 学习笔记系列. 二 刷题步骤 第一遍 五分钟:读题 + 思考 直接看解法:多看几种,比较解法优劣 背诵.默写好的解法 第二遍 马上自己写 --> Leetc ...

最新文章

  1. 通信错误:(-1)[描述:无法解析路由器DDNS地址,请检查DDNS状态.] 解析办法
  2. Android Studio javadoc 生成注释文档
  3. Gradle for Android 第三篇( 依赖管理 )
  4. p2020开发_2020年最佳开发者社区
  5. 联想拯救者电竞手机成功“截胡”:全球首发骁龙865+
  6. 实现Servlet虚拟路径的映射
  7. sql server中除数为零的处理技巧
  8. AI-终极算法-遗传算法
  9. Java---计算器(标准计算器,科学计算器)的实现
  10. mysql分页查询公式
  11. java英文单词断行_CSS样式解决英文换行断词问题
  12. 分析方法选讲期末复习脉络图---完结版
  13. 阿里云轻量应用型服务器防火墙端口开放了还是无法访问问题@林
  14. 怎么选择触摸液晶广告机?
  15. 2021-06-14 Socketio学习使用搭建一个聊天室
  16. 实践▍用大数据扒一扒蔡徐坤的真假流量粉 | Alfred数据室
  17. c#程序设计语言杜松江版_清华大学出版社-图书详情-《C#语言Windows程序设计(第2版)》...
  18. 22张图带你了解IP地址有什么作用
  19. 在linux上安装navicat 出现使用一段时间后闪退的情况
  20. 1241.外卖店优先级

热门文章

  1. Drools 规则引擎一文读懂
  2. 2022-2028年中国差旅管理行业市场行情动态及投资潜力研究报告
  3. android h5 保存通讯录,h5+调用系统通讯录
  4. 深度装机大师一键重装_电脑店U盘重装系统教程
  5. 安装VMware15.5+安装win10虚拟机操作系统(非常详细)
  6. 网络工程师计算机职称考试,软考网络工程师中级职称评定条件
  7. 深入理解JVM虚拟机之高效并发
  8. -f shell 模糊匹配_shell模糊匹配与正则详解
  9. 机械--NX2007(UG)有限元分析教程2--装配体
  10. idea 谷歌翻译