本系列是《剑指Offer 名企面试官精讲典型编程题 第2版》的Java代码实现,实现的思路基本都是参照了作者的思路,有的适当地做了一些优化。在牛客网上可能会有更优的解法,但我这里并没有收录。
本篇其实是按照书上目录的顺序做的索引,其中每篇博客都列出了题目、牛客网练习的地址(有些可能牛客网没有)、Java版的参考答案和复杂度分析。
目录索引
第1章 面试的流程
第2章 面试需要的基础知识
- 2.1 面试官谈基础知识
- 2.2 编程语言
- 2.3 数据结构
- 2.3.1 数组
- 面试题3:数组中重复的数字
- 面试题4:二维数组中的查找
- 2.3.2 字符串
- 面试题5:替换空格
- 2.3.3 链表
- 面试题6:从尾到头打印链表
- 2.3.4 树
- 面试题7:重建二叉树
- 面试题8:二叉树的下一个节点
- 2.3.5 栈和队列
- 面试题9:用两个栈实现队列
- 2.4 算法和数据操作
- 2.4.1 递归和循环
- 面试题10:斐波那契数列
- 2.4.2 查找和排序
- 面试题11:旋转数组的最小数字
- 2.4.3 回溯法
- 面试题12:矩阵中的路径
- 面试题13:机器人的运动范围
- 2.4.4 动态规划与贪婪算法
- 面试题14:剪绳子
- 2.4.5 位运算
- 面试题15:二进制中1的个数
- 2.5 本章小结
第3章 高质量的代码
- 3.1 面试官谈代码质量
- 3.2 代码的规范性
- 3.3 代码的完整性
- 3.4 代码的鲁棒性
- 3.5 本章小结
第4章 解决面试题的思路
- 4.1 面试官谈面试思路
- 4.2 画图让抽象问题形象化
- 4.3 举例让抽象问题具体化
- 4.4 分解让复杂问题简单化
- 4.5 本章小结
第5章 优化时间和空间效率
- 5.1 面试官谈效率
- 5.2 时间效率
- 5.3 时间效率与空间效率的平衡
- 5.4 本章小结
第6章 面试中的各项能力
- 6.1 面试官谈能力
- 6.2 沟通能力和学习能力
- 6.3 知识迁移能力
- 6.4 抽象建模能力
- 6.5 发散思维能力
- 6.6 本章小结
第7章 两个面试案例
整理得这么辛苦,大家点个赞,关注我一下吧!也可以关注一下专题 剑指Offer Java版 哈~
最后,欢迎加我微信 jimmysundev
一起交流学习!
加好友时请注明申请理由,例如「姓名/昵称 + Android 交流」,示例:张三 Android 交流。