剑指offer刷题记录
已完成:
- CQueue:用两个栈实现队列 (栈,队列)
- minStack: 包含min函数的栈 (栈)
- reversePrint: 逆序打印链表 (链表,栈,递归)
- reverseList: 将链表反向 (链表,栈,递归)
- copyRandomList: 复制复杂随机链表 (链表,哈希)
- replaceSpace: 替换字符串中的空格 (双指针)
- reverseLeftWords: 将字符串左旋 (双指针)
- findRepeatNumber: 查找重复的数字 (排序)(哈希)
- search: 统计一个数字在排序数组中出现的次数 (二分)
- missingNumber: 查找缺失的数字 (二分)
- findIn2DArray: 判断二维数组中是否含有目标值 (二叉搜索树,矩阵)
- minArray: 旋转数组中的最小值 (二分)
- firstUniqChar: 找出字符串第一个只出现一次的字符 (哈希)
- levelOrder: 从上到下打印二叉树 (树)(层序遍历)
- levelOrder2: 层序遍历,一层一层输出 (树)(层序遍历)
- levelOrder3: 层序遍历,之字形输出 (树)(层序遍历)
- isSubstructure: 树的子结构 (树)
- mirrorTree: 二叉树的镜像 (树)
- isSymmetric: 对称的二叉树 (树)
- fib: 斐波那契数列 (递归)(滑动窗口)
- numWays: 爬楼梯 (递归)(滑动窗口)
- maxProfit: 股票的最大利润 (dp)
- maxSubArray: 连续子数组的最大和 (dp)
- maxValue: 礼物的最大价值 (dp)
- lengthOfLongestSubstring: 最长不含重复字符的子字符串 (dp)
- 把数字翻译成字符串 (dp)