更新:此系列题解已经放到 Github,链接: https://github.com/dox1994/offer-coding-interviews-python ,可以clone或者fork留存。觉得有用也请记得给个小星星呀✨
断断续续刷完了牛客网上的剑指 Offer 题目,也随着整理了所有题目的解答方案,python 写的。
目录如下:
第1篇
| 数组 | 二维数组中的查找
第2篇
| 字符串 | 替换空格
| 链表 | 从尾到头打印链表
第3篇
| 树 | 重建二叉树
| 栈和队列 | 用两个栈实现队列
| 查找和排序 | 旋转数组的最小数字
第4篇
| 递归和循环 | 斐波那契数列
| 递归和循环 | 跳台阶
| 递归和循环 | 变态跳台阶
| 递归和循环 | 矩形覆盖
第5篇
| 位运算 | 二进制中1的个数
| 代码的完整性 | 数值的整数次方
| 代码的完整性 | 调整数组顺序使奇数位于偶数前面
第6篇
| 代码的鲁棒性 | 链表中倒数第k个结点
| 代码的鲁棒性 | 反转链表
| 代码的鲁棒性 | 合并两个排序的链表
| 代码的鲁棒性 | 树的子结构
第7篇
| 面试思路 | 二叉树的镜像
| 画图让抽象形象化 | 顺时针打印矩阵
| 举例让抽象具体化 | 包含min函数的栈
| 举例让抽象具体化 | 栈的压入、弹出序列
| 举例让抽象具体化 | 从上往下打印二叉树
| 举例让抽象具体化 | 二叉搜索树的后序遍历序列
| 举例让抽象具体化 | 二叉树中和为某一值的路径
第8篇
| 分解让复杂问题简单 | 复杂链表的复制
| 分解让复杂问题简单 | 二叉搜索树与双向链表
| 分解让复杂问题简单 | 字符串的排列
第9篇
| 时间效率 | 数组中出现次数超过一半的数字
| 时间效率 | 最小的K个数
| 时间效率 | 连续子数组的最大和
| 时间效率 | 整数中1出现的次数(从1到n整数中1出现的次数)
| 时间效率 | 把数组排成最小的数
第10篇
| 时间空间效率的平衡 | 丑数
| 时间空间效率的平衡 | 第一个只出现一次的字符位置
| 时间空间效率的平衡 | 数组中的逆序对
| 时间空间效率的平衡 | 两个链表的第一个公共结点
第11篇
| 知识迁移能力 | 数字在排序数组中出现的次数
| 知识迁移能力 | 二叉树的深度
| 知识迁移能力 | 平衡二叉树
| 知识迁移能力 | 数组中只出现一次的数字
| 知识迁移能力 | 和为S的连续正数序列
| 知识迁移能力 | 和为S的两个数字
第12篇
| 知识迁移能力 | 左旋转字符串
| 知识迁移能力 | 翻转单词顺序列
| 抽象建模能力 | 扑克牌顺子
| 抽象建模能力 | 孩子们的游戏(圆圈中最后剩下的数)
| 发散思维能力 | 求1+2+3+...+n
| 发散思维能力 | 不用加减乘除做加法
第13篇
| 综合 | 把字符串转换成整数
| 数组 | 数组中重复的数字
| 数组 | 构建乘积数组
| 字符串 | 正则表达式匹配
| 字符串 | 表示数值的字符串
| 字符串 | 字符流中第一个不重复的字符
| 链表 | 链表中环的入口结点
| 链表 | 删除链表中重复的结点
第14篇
| 树 | 二叉树的下一个结点
| 树 | 对称的二叉树
| 树 | 按之字形顺序打印二叉树
| 树 | 把二叉树打印成多行
| 树 | 序列化二叉树
| 树 | 二叉搜索树的第k个结点
| 树 | 数据流中的中位数
第15篇
| 栈和队列 | 滑动窗口的最大值
| 回溯法 | 矩阵中的路径
| 回溯法 | 机器人的运动范围
更多内容欢迎关注我的博客 https://codingcat.cn