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

本文完,感谢阅读

相关推荐
橘子星26 分钟前
基于 Vite 的多模态生图前端工程实践
前端·javascript·人工智能
想要成为糕糕手26 分钟前
从零到一:CSS 3D 旋转立方体完全指南
前端·css·canvas
疯狂的魔鬼27 分钟前
多角色督办任务详情页:从权限矩阵到组件拆分的完整实现
前端·vue.js·架构
隔窗听雨眠28 分钟前
C语言函数递归从入门到精通(下):性能优化与工程实践
c语言·算法·性能优化
恋猫de小郭29 分钟前
Android 17 正式版发布,全新 AI 和各种破坏性更新
android·前端·flutter
半个落月33 分钟前
从零搭建 AI 生图前端|Vite 工程化 + 通义千问 API 实战,附 API Key 安全方案
前端·人工智能
退休倒计时34 分钟前
【每日一题】LeetCode 146. LRU 缓存 TypeScript
算法·leetcode·缓存·typescript
codexu_46122918735 分钟前
NoteGen 里一条记录如何变成 Markdown
前端·笔记·rust·tauri
珊瑚里的鱼37 分钟前
【递归】汉诺塔
算法·深度优先
meilindehuzi_a39 分钟前
从 Canvas 到 Vibe Coding:HTML5 游戏开发入门与 AI 飞机大战实战
前端·人工智能·html5