Java研发岗面试手撕必背算法82道

一、写在前面

有⼀些题我们不管是什么难度都必须掌握的 Hard会⼀些⾼频即可;
主攻Medium,反复做,略加回忆思考就可以写出;
Easy的题⼀秒钟都不许卡 这不是竞赛,真的不需要智⼒,只需要你努⼒,不断重复+少量思考总结即可。 
没那么多⼈有时间给你出新题,绝⼤多数正常⾯试都是原题。  
字节等公司可能让你⾃⼰写测试⽤例,平时注意练⼀下  
作者目标:吃透一道就换成超链接

二、必会

快速排序、归并排序、堆排序最好会写。卡⼀下都不⾏,没事就写着玩看最快多久能写完 
⼆叉树的前中后序、层序遍历、Z字遍历。迭代法写,递归⼀共那⼏⾏谁不会啊 
反转链表。各种反,直接反,反⼀段,K个⼀组全反,K个⼀组不够K个不反 
接⾬⽔!!!单调栈 
股票买卖!
机器⼈寻路!!动态规划! 回溯法也很容易考,这是⼀种思想经常与树和其他结合 
字符串的题最多变,有双指针滑动窗⼝还有动态规划还有其他很烦 
LRU必须⾄少独⽴写出来10次bugfree,LFU这个⾄少5次吧

三、Hard难度15道

刷这些就⾏,Hard不要刻意追求,真被考到范围外的概率极其⼩,估计⾯试官⼼情很不好==!

25. K 个⼀组翻转链表
23. 合并K个排序链表
42. 接雨水
43. ⼆叉树中的最⼤路径和
72. 编辑距离
4. 寻找两个正序数组的中位数
76. 最⼩覆盖⼦串
239. 滑动窗⼝最⼤值
48. 缺失的第⼀个正数
49. 最⻓有效括号
50. ⼆叉树的序列化与反序列
51. LFU缓存
剑指 Offer 51. 数组中的逆序对
52. 基本计算器
53. 分发糖果

四、Medium难度67道

中等难度必须要掌握

3. ⽆重复字符的最⻓⼦串
146. LRU缓存机制
215. 数组中的第K个最⼤元素
15. 三数之和
102. ⼆叉树的层序遍历
103. ⼆叉树的锯⻮形层次遍历
236. ⼆叉树的最近公共祖先
33. 搜索旋转排序数组
5. 最⻓回⽂⼦串
200. 岛屿数量
46. 全排列
92. 反转链表 II
142. 环形链表 II
54. 螺旋矩阵
300. 最长递增子序列
143. 重排链表
199.⼆叉树的右视图
56.合并区间
19. 删除链表的倒数第N个节点
82.删除排序链表中的重复元素 II
8. 字符串转换整数 (atoi)
148.排序链表
2. 两数相加
151.翻转字符串⾥的单词
93. 复原IP地址
105. 从前序与中序遍历序列构造⼆叉树
31. 下⼀个排列
1143. 最⻓公共⼦序列
22. 括号⽣成
129. 求根到叶⼦节点数字之和
113. 路径总和 II
98. 验证⼆叉搜索树
43. 字符串相乘
78. ⼦集
470. ⽤ Rand7() 实现 Rand10()
322. 零钱兑换
64. 最⼩路径和
718. 最⻓重复⼦数组
48. 旋转图像
165. ⽐较版本号
39. 组合总和
34. 在排序数组中查找元素的第⼀个和最后⼀个位置
153. 寻找旋转排序数组中的最⼩值
62. 不同路径
128. 最⻓连续序列
221. 最⼤正⽅形
240. 搜索⼆维矩阵 II
24. 两两交换链表中的节点
695. 岛屿的最⼤⾯积
198. 打家劫舍
498. 对⻆线遍历
662. ⼆叉树最⼤宽度
79. 单词搜索
145. ⼆叉树的后序遍历
402. 移掉K位数字
59. 螺旋矩阵 II
230.⼆叉搜索树中第K⼩的元素
328.奇偶链表
61.旋转链表
50.Pow(x, n)
47. 全排列 II
450. 删除⼆叉搜索树中的节点
74. 搜索⼆维矩阵
189. 旋转数组
40. 组合总和 II
11. 盛最多⽔的容器
114. ⼆叉树展开为链表

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梧杵

还是学生,生活太难

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值