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. 斐波那契数

本文完,感谢阅读

相关推荐
易安说AI1 分钟前
Ralph Loop 让Claude无止尽干活的牛马...
前端·后端
颜酱1 小时前
图结构完全解析:从基础概念到遍历实现
javascript·后端·算法
m0_736919101 小时前
C++代码风格检查工具
开发语言·c++·算法
yugi9878381 小时前
基于MATLAB强化学习的单智能体与多智能体路径规划算法
算法·matlab
DuHz2 小时前
超宽带脉冲无线电(Ultra Wideband Impulse Radio, UWB)简介
论文阅读·算法·汽车·信息与通信·信号处理
失忆爆表症2 小时前
05_UI 组件库集成指南:Shadcn/ui + Tailwind CSS v4
前端·css·ui
小迷糊的学习记录2 小时前
Vuex 与 pinia
前端·javascript·vue.js
发现一只大呆瓜2 小时前
前端性能优化:图片懒加载的三种手写方案
前端·javascript·面试
Polaris北极星少女2 小时前
TRSV优化2
算法
不爱吃糖的程序媛2 小时前
Flutter 与 OpenHarmony 通信:Flutter Channel 使用指南
前端·javascript·flutter