| 全排列 |  数青蛙 |  对数组执行操作 | 
 | 统计范围内的元音字符串数 |  可被 k 整除的最小整数 |  礼物的最大甜蜜度 | 
 | 二进制相加 |  活字印刷 |  叶值的最小代价生成树 | 
 | 根到叶路径的不足节点 |  受标签影响的最大值 |  删点成林 | 
 | 栈实现队列 |  Offer 11 —— 旋转数组的最小数字 |  前序中序构造二叉树 | 
 | 输入一个数组转为二叉树 |  变态跳台阶 |  可被三整除的最大和 | 
 | 斐波那契数列 |  调整数组顺序 |  二进制中 1 的个数 | 
 | 找出中枢整数 |  反转链表 |  合并两个排序的链表 | 
 | 删除一次得到子数组最大和 |  树的子结构 |  顺时针打印矩阵 | 
 | 翻转二叉树 |  Offer 30 —— 包含 min 函数的栈 |  回环句 | 
 | 两数相加 2 |  Offer 31 —— 栈的压入,弹出序列 |  矩阵中的和 | 
 | Offer 32 —— 从上到下打印二叉树 |  Offer 33 —— 二叉搜索树的后序遍历序列 |  Offer 06 —— 从尾到头打印链表 | 
 | Offer 04 —— 二维数组中的查找 |  Offer 34 —— 二叉树中和为某一值的路径 |  路径总和 | 
 | 拆分成最多数目的正偶数之和 |  Offer 38 —— 字符串排列 |  Offer 36 —— 二叉搜索树与双向链表 | 
 | Offer 35 —— 复杂链表的复制 |  最接近的三数之和 |  Offer 42 —— 连续子数组的最大和 | 
 | Offer 43 —— 1~n 整数中 1 出现的次数 |  Offer 45 —— 把数组排成最小的数 |  Offer 49 —— 丑数 | 
 | 第一次只出现一次的字符 |  最大子序列交替和 |  Offer 51 —— 数组中的逆序对 | 
 | Offer 52 —— 两个链表的第一个公共节点 |  Offer 56 —— 数组中数字出现的次数 |  平衡二叉树 | 
 | Offer 57 —— 和为s的连续正数序列 |  ROL |  判断版本号 | 
 | 约瑟夫环 |  n个数相加 |  环形子数组的最大和 | 
 | 字符串转为整数 |  Offer 66 —— 构建乘积数组 |  Offer 20 —— 表示数值的字符串 | 
 | 不含重复字符的最长子字符串 |  链表中环的入口节点 |  删除链表的倒数第n个节点 | 
 | Offer 32 —— 按之字形顺序打印二叉树 |  序列化二叉树 |  滑动窗口的最大值 | 
 | 最长递增子序列 |  KMP |  有序数组的平方 | 
 | 长度最小的子数组 |  快乐数 |  三数之和 | 
 | 子数组绝对值最大值 |  括号匹配 |  下降路径的最小和 | 
 | 最长递增子序列2 |  最长回文子串 |  小红构造字符串 | 
 | 陡峭值 |  最大排列差 |  拼接字符串 | 
 | 最小覆盖子串 |   |   |