30 天刷题挑战总结

前言

总结一下 30 天刷题的题目,可以根据这个列表快速掌握算法面试要点。

数组

数组是存放在连续内存空间上的相同类型数据的集合

27. 移除元素

88. 合并两个有序数组

1431. 拥有最多糖果的孩子

字符串

344. 反转字符串

443. 压缩字符串

1071. 字符串的最大公因子

双指针

283. 移动零

392. 判断子序列

15. 三数之和

滑动窗口

209. 长度最小的子数组

643. 子数组最大平均数 I

1004. 最大连续1的个数 III

二分查找

704. 二分查找)

374. 猜数字大小

875. 爱吃香蕉的珂珂

哈希表

哈希表是根据键直接访问值的数据结构

1. 两数之和

202. 快乐数

2215. 找出两数组的不同

栈先进后出

20. 有效的括号

735. 小行星碰撞

1047. 删除字符串中的所有相邻重复项

队列

队列先进先出

649. Dota2 参议院

933. 最近的请求次数

链表

链表是一种通过指针串联在一起的线性结构,每一个节点由两部分组成,一个是数据域一个是指针域(存放指向下一个节点的指针),最后一个节点的指针域指向null(空指针的意思)

206. 反转链表

328. 奇偶链表

二叉树

  • 深度优先遍历
    • 前序遍历(中左右)
    • 中序遍历(左中右)
    • 后序遍历(左右中)
  • 广度优先遍历
    • 层次遍历(迭代法)

104. 二叉树的最大深度

110. 平衡二叉树

437. 路径总和 III

700. 二叉搜索树中的搜索

回溯算法

回溯的本质是穷举,穷举所有可能,然后选出我们想要的答案

17. 电话号码的字母组合

78. 子集 - 力扣(LeetCode)

216. 组合总和 III

贪心算法

贪心是从局部直接选最优

455. 分发饼干

53. 最大子数组和

452. 用最少数量的箭引爆气球

动态规划

动态规划中每一个状态一定是由上一个状态推导出来的

70. 爬楼梯

198. 打家劫舍

322. 零钱兑换

121. 买卖股票的最佳时机

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

位运算

338. 比特位计数

136. 只出现一次的数字

数学

9. 回文数

69. x 的平方根

509. 斐波那契数

本文完,感谢阅读

相关推荐
kyriewen4 分钟前
我给前端项目的接口请求套了6层保护——才发现以前一直在裸奔
前端·javascript·面试
颜酱5 分钟前
04 | 召回前置准备:搭好召回所需的四个数据库
前端·人工智能·后端
wdfk_prog12 分钟前
嵌入式面试真题第 15 题:不可恢复异常后的通用崩溃快照、调用栈保存与离线分析架构
linux·开发语言·面试·架构
郝亚军2 小时前
如何安装webstorm、Node.js和vue CLI
前端·javascript·vue.js
IT_陈寒2 小时前
React的useEffect依赖项把我坑惨了
前端·人工智能·后端
东方小月2 小时前
从零开发一个Coding Agent:monorepo项目搭建
前端·后端·node.js
葬送的代码人生2 小时前
别再让 AI 瞎写代码了!Vibe Coding 三步法教你写出靠谱代码
前端·设计模式·架构
Shirley~~2 小时前
Code-Review-Graph:面向 AI 辅助代码审查的结构化上下文引擎
前端·ai编程
AI多Agent协作实战派2 小时前
AI多Agent协作系统实战(十七):凌晨4点,我的AI系统在“假装工作“——3个bug同时爆炸的5小时
java·前端·bug
qq_2518364573 小时前
基于java Web 动漫视频网站毕业论文
java·开发语言·前端