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

本文完,感谢阅读

相关推荐
no_play_no_games14 分钟前
[模板]树的最长路径
算法·深度优先·图论·树形结构
tan77º41 分钟前
【C++】异常
c++·算法
学习ing小白43 分钟前
JavaWeb - 5 - 前端工程化
前端·elementui·vue
ymchuangke1 小时前
数据清洗-缺失值处理-缺失值可视化图(竖线)
python·算法·数学建模
我要学编程(ಥ_ಥ)1 小时前
滑动窗口算法专题(1)
java·数据结构·算法·leetcode
niceffking1 小时前
JVM 一个对象是否已经死亡?
java·jvm·算法
大油头儿1 小时前
排序算法-冒泡排序
数据结构·算法·排序算法
真的很上进1 小时前
【Git必看系列】—— Git巨好用的神器之git stash篇
java·前端·javascript·数据结构·git·react.js
胖虎哥er1 小时前
Html&Css 基础总结(基础好了才是最能打的)三
前端·css·html
qq_278063711 小时前
css scrollbar-width: none 隐藏默认滚动条
开发语言·前端·javascript