《剑指offer》Java版全系列题解(2021版,持续更新!)
本系列记录了最新版 《剑指Offer》 的题解过程与代码,因为原书是c语言。这里用Java代码复现并优化,并包含解题分析。
希望各位能够点赞,收藏!关注我! 每日更新!
2021.4.24 完结
如果在准备java面试,可以看看我的另外一篇文章! Java面试复习体系总结(2021版,持续更新)
****题解(包含详细分析过程,代码) | 力扣链接 |
---|---|
剑指Offer系列(java版,详细解析) 03. 数组中重复的数字 | 剑指 Offer 03. 数组中重复的数字 |
剑指Offer系列(java版,详细解析)04.二维数组中的查找 | 二维数组中的查找 |
剑指Offer系列(java版,详细解析)05.替换空格 | 替换空格 |
剑指Offer系列(java版,详细解析)06.从尾到头打印链表 | 从尾到头打印链表 |
剑指Offer系列(java版,详细解析)07.重建二叉树 | 重建二叉树 |
剑指Offer系列(java版,详细解析)08.二叉树的下一个节点 | 无 |
剑指Offer系列(java版,详细解析)09.用两个栈实现队列 | 用两个栈实现队列 |
剑指Offer系列(java版,详细解析)10.斐波那契数列 | 斐波那契数列 |
剑指Offer系列(java版,详细解析)11.旋转数组的最小数字 | 旋转数组的最小数字 |
剑指Offer系列(java版,详细解析)12.矩阵中的路径 | 矩阵中的路径 |
剑指Offer系列(java版,详细解析)13.机器人的运动范围 | 机器人的运动范围 |
剑指Offer系列(java版,详细解析)14.剪绳子 | 剪绳子 |
剑指Offer系列(java版,详细解析)15.二进制中1的个数 | 二进制中1的个数 |
剑指Offer系列(java版,详细解析)16.数值的整数次方 | 数值的整数次方 |
剑指Offer系列(java版,详细解析)17.打印从1到最大的n位数 | 打印从1到最大的n位数 |
剑指Offer系列(java版,详细解析)18.删除链表节点 | 删除链表的节点 |
剑指Offer系列(java版,详细解析)19.正则表达式匹配 | 正则表达式匹配 |
剑指Offer系列(java版,详细解析)20.表示数值的字符串 | 表示数值的字符串 |
剑指Offer系列(java版,详细解析)21.调整数组顺序使奇数位于偶数前面 | 调整数组顺序使奇数位于偶数前面 |
剑指Offer系列(java版,详细解析)22.链表中倒数第K个节点 | 链表中倒数第k个节点 |
剑指Offer系列(java版,详细解析)24.反转链表 | 反转链表 |
剑指Offer系列(java版,详细解析)25.合并两个排序的链表 | 合并两个排序的链表 |
剑指Offer系列(java版,详细解析)26.树的子结构 | 树的子结构 |
剑指Offer系列(java版,详细解析)27.二叉树的镜像 | 二叉树的镜像 |
剑指Offer系列(java版,详细解析)28.对称的二叉树 | 对称的二叉树 |
剑指Offer系列(java版,详细解析)29.顺时针打印矩阵 | 顺时针打印矩阵 |
剑指Offer系列(java版,详细解析)30.包含min函数的栈 | 包含min函数的栈 |
剑指Offer系列(java版,详细解析)31.栈的压入、弹出序列 | 栈的压入、弹出序列 |
剑指Offer系列(java版,详细解析)32.从上到下打印二叉树 | 从上到下打印二叉树 |
剑指Offer系列(java版,详细解析)33.二叉搜索树的后序遍历序列 | 二叉搜索树的后序遍历序列 |
剑指Offer系列(java版,详细解析)34.二叉树中和为某一值的路径 | 二叉树中和为某一值的路径 |
剑指Offer系列(java版,详细解析)35.复杂链表的复制 | 复杂链表的复制 |
剑指Offer系列(java版,详细解析)36.二叉搜索树与双向链表 | 二叉搜索树与双向链表 |
剑指Offer系列(java版,详细解析)37.序列化二叉树 | 序列化二叉树 |
剑指Offer系列(java版,详细解析)38.字符串的排列 | 字符串的排列 |
剑指Offer系列(java版,详细解析)39.数组中出现次数超过一半的数字 | 数组中出现次数超过一半的数字 |
剑指Offer系列(java版,详细解析)40.最小的k个数 | 最小的k个数 |
剑指Offer系列(java版,详细解析)41.数据流中的中位数 | 数据流中的中位数 |
剑指Offer系列(java版,详细解析)42.连续子数组的最大和 | 连续子数组的最大和 |
剑指Offer系列(java版,详细解析)43. 1~n整数中1出现的次数 | 1~n 整数中 1 出现的次数 |
剑指Offer系列(java版,详细解析)44.数字序列中某一位的数字 | 数字序列中某一位的数字 |
剑指Offer系列(java版,详细解析)45.把数组排成最小的数 | 把数组排成最小的数 |
剑指Offer系列(java版,详细解析)46.把数字翻译成字符串 | 把数字翻译成字符串 |
剑指Offer系列(java版,详细解析)47.礼物的最大价值 | 礼物的最大价值 |
剑指Offer系列(java版,详细解析)48.最长不含重复字符的子字符串 | 最长不含重复字符的子字符串 |
剑指Offer系列(java版,详细解析)49.丑数 | 丑数 |
剑指Offer系列(java版,详细解析)50.第一个只出现一次的字符 | 第一个只出现一次的字符 |
剑指Offer系列(java版,详细解析)51.数组中的逆序对 | 数组中的逆序对 |
剑指Offer系列(java版,详细解析)52.两个链表的第一个公共节点 | 两个链表的第一个公共节点 |
剑指Offer系列(java版,详细解析)53.在排序数组中查找数字 | 在排序数组中查找数字 I |
剑指Offer系列(java版,详细解析)54.二叉搜索树的第K大的节点 | 二叉搜索树的第k大节点 |
剑指Offer系列(java版,详细解析)55.二叉树的深度 | 二叉树的深度 |
剑指Offer系列(java版,详细解析)56.数字中数字出现的次数 | 数组中数字出现的次数 |
剑指Offer系列(java版,详细解析)57.和为s的数字 | 和为s的两个数字 |
剑指Offer系列(java版,详细解析)58.翻转字符串 | 翻转单词顺序 |
剑指Offer系列(java版,详细解析)59.队列的最大值 | 队列的最大值 |
剑指Offer系列(java版,详细解析)个骰子的点数 | n个骰子的点数 |
剑指Offer系列(java版,详细解析)61.扑克牌中的顺子 | 扑克牌中的顺子 |
剑指Offer系列(java版,详细解析)62.圆圈中最后剩下的数字 | 圆圈中最后剩下的数字 |
剑指Offer系列(java版,详细解析)63.股票的最大利润 | 股票的最大利润 |
剑指Offer系列(java版,详细解析)64.求1+2+…+n | 求1+2+…+n |
剑指Offer系列(java版,详细解析)65.不用加减乘除做加法 | 不用加减乘除做加法 |
剑指Offer系列(java版,详细解析)66.构建乘积数组 | 构建乘积数组 |
剑指Offer系列(java版,详细解析)67.把字符串转化成整数 | 把字符串转换成整数 |
剑指Offer系列(java版,详细解析)68.树中两个节点的最低公共祖先 | 二叉搜索树的最近公共祖先 |
解题中的参考知识
参考知识连接 |
---|
java中提取整数上的各位数字,数位求和,两种解法! |
Java面试复习体系总结(2021版,持续更新) |