计划完成牛客网剑指Offer习题以及LeetCode中的100+道,持续更新,剑指Offer的题主要用python,LeetCode的题会用Java。另外Android、Java岗面试必备知识点与常见面试题见[另一个仓库](https://github.com/DmrfCoder/interview),涉及Java、Android、数据库原理、操作系统、计算机网络等。 # 牛客网-剑指offer - [二维数组中的查找](./SwordToOffer/Doc/二维数组中的查找.md) - [替换空格](./SwordToOffer/Doc/替换空格.md) - [从尾到头打印链表](./SwordToOffer/Doc/从尾到头打印链表.md) - [**重建二叉树**](./SwordToOffer/Doc/重建二叉树.md) - [用两个栈实现队列](./SwordToOffer/Doc/用两个栈实现队列.md) - [旋转数组的最小数字](./SwordToOffer/Doc/旋转数组的最小数字.md) - [跳台阶](./SwordToOffer/Doc/跳台阶.md) - [**变态跳台阶**](./SwordToOffer/Doc/变态跳台阶.md) - [***矩形覆盖***](./SwordToOffer/Doc/矩形覆盖.md) - [二进制中1的个数](./SwordToOffer/Doc/二进制中1的个数.md) - [***数值的整数次方***](./SwordToOffer/Doc/数值的整数次方.md) - [调整数组顺序使奇数位于偶数前面](./SwordToOffer/Doc/调整数组顺序使奇数位于偶数前面.md) - [链表中倒数第k**个节点**](./SwordToOffer/Doc/链表中倒数第k个节点.md) - [反转链表](./SwordToOffer/Doc/反转链表.md) - [合并两个排序的链表](./SwordToOffer/Doc/合并两个排序的链表.md) - [***树的子结构***](./SwordToOffer/Doc/树的子结构.md) - [***树的镜像***](./SwordToOffer/Doc/树的镜像.md) - [***顺时针打印矩阵***](./SwordToOffer/Doc/顺时针打印矩阵.md) - [***包含min函数的栈***](./SwordToOffer/Doc/包含min函数的栈.md) - [栈的压入&弹出顺序](./SwordToOffer/Doc/栈的压入&弹出顺序.md) - [从上往下打印二叉树](./SwordToOffer/Doc/从上往下打印二叉树.md) - [***二叉搜索树的后序遍历***](./SwordToOffer/Doc/二叉搜索树的后序遍历.md) - [**二叉树中和为某一数的路径**](./SwordToOffer/Doc/二叉树中和为某一数的路径.md) - [***复杂链表的复制***](./SwordToOffer/Doc/复杂链表的复制.md) - [二叉搜索树与双向链表](./SwordToOffer/Doc/二叉搜索树与双向链表.md) - [字符串的排列](./SwordToOffer/Doc/字符串的排列.md) - [***数组中出现次数超过一半的数字***](./SwordToOffer/Doc/数组中出现次数超过一半的数字.md) - [**最小的K个数**](./SwordToOffer/Doc/最小的K个数.md) - [**连续子数组的最大和**](./SwordToOffer/Doc/连续子数组的最大和.md) - [把数组排成最小的数](./SwordToOffer/Doc/把数组排成最小的数.md) - [整数中1出现的次数](./SwordToOffer/Doc/整数中1出现的次数.md) - [***丑数***](./SwordToOffer/Doc/丑数.md) - [第一次只出现一次的字符](./SwordToOffer/Doc/第一次只出现一次的字符.md) - [两个链表的第一个公共节点](./SwordToOffer/Doc/两个链表的第一个公共节点.md) - [数字在排序数组中出现的次数](./SwordToOffer/Doc/数字在排序数组中出现的次数.md) - [二叉树的深度](./SwordToOffer/Doc/二叉树的深度.md) - [平衡二叉树](./SwordToOffer/Doc/平衡二叉树.md) - [***数组中只出现一次的数字***](./SwordToOffer/Doc/数组中只出现一次的数字.md) - [和为s的连续正数序列](./SwordToOffer/Doc/和为s的连续正数序列.md) - [和为s的两个数字](./SwordToOffer/Doc/和为s的两个数字.md) - [左旋字符串](./SwordToOffer/Doc/左旋字符串.md) - [翻转单词序列](./SwordToOffer/Doc/翻转单词序列.md) - [扑克牌顺子](./SwordToOffer/Doc/扑克牌顺子.md) - [圆圈中的最后数字](./SwordToOffer/Doc/圆圈中的最后数字.md) - [不能用循环的1到n之和](./SwordToOffer/Doc/不能用循环的1到n之和.md) - [***不用加减乘除做加法***](./SwordToOffer/Doc/不用加减乘除做加法.md) - [将字符串转为整数](./SwordToOffer/Doc/将字符串转为整数.md) - [***寻找数组中任意一个重复的数字***](./SwordToOffer/Doc/寻找数组中任意一个重复的数字.md) - [***构建乘积数组***](./SwordToOffer/Doc/构建乘积数组.md) - [***正则表达式匹配***](./SwordToOffer/Doc/正则表达式匹配.md) - [***字符流中第一个不重复的字符***](./SwordToOffer/Doc/字符流中第一个不重复的字符.md) - [***最大陆地问题***](./SwordToOffer/Doc/最大陆地问题.md) - [***机器人的运动范围***](./SwordToOffer/Doc/机器人的运动范围.md) - [***矩阵中的路径***](./SwordToOffer/Doc/矩阵中的路径.md) - [滑动窗口的最大值](./SwordToOffer/Doc/滑动窗口的最大值.md) - [***数据流的中位数***](./SwordToOffer/Doc/数据流的中位数.md) - [***数组中的逆序对***](./SwordToOffer/Doc/数组中的逆序对.md) - [表示数值的字符串](./SwordToOffer/Doc/表示数值的字符串.md) - [二叉搜索树的第k个节点](./SwordToOffer/Doc/二叉搜索树的第k个节点.md) - [序列化二叉树](./SwordToOffer/Doc/序列化二叉树.md) - [把二叉树打印成多行(层序遍历)](./SwordToOffer/Doc/把二叉树打印成多行.md) - [***按之字形打印二叉树***](./SwordToOffer/Doc/按之字形打印二叉树.md) - [对称的二叉树](./SwordToOffer/Doc/对称的二叉树.md) - [二叉树的下一个节点](./SwordToOffer/Doc/二叉树的下一个节点.md) - [**删除有序链表中重复的节点**](./SwordToOffer/Doc/删除链表中重复的节点.md) - [**链表中环的入口节点**](./SwordToOffer/Doc/链表中环的入口节点.md) - [**字符流中第一个不重复的字符**](./SwordToOffer/Doc/字符流中第一个不重复的字符.md) - [表示数字的字符串](./SwordToOffer/Doc/表示数字的字符串.md) # LeetCode - [minimum-depth-of-binary-tree(求解二叉树的最小深度)](./LeetCode/Doc/二叉树的最小深度.md) - [evaluate-reverse-polish-notation(计算逆波兰式的值)](./LeetCode/Doc/计算逆波兰式的值.md) - [max-points-on-a-line(同一条直线上的最多的点的数量)](./LeetCode/Doc/同一条直线上的最多的点的数量.md) - [sort-list(排序List)](./LeetCode/Doc/排序List.md) - [insertion-sort-list(使用插入排序对链表进行排序)](./LeetCode/Doc/使用插入排序对链表进行排序.md) - [binary-tree-postorder-traversal(后序遍历二叉树)](./LeetCode/Doc/后序遍历二叉树.md) - [binary-tree-preorder-traversal(先序遍历二叉树)](./LeetCode/Doc/先序遍历二叉树.md) - [reorder-list(链表重排序)](./LeetCode/Doc/链表重排序.md) - [linked-list-cycle-ii(找出链表中环的入口节点)](./LeetCode/Doc/找出链表中环的入口节点.md) - [linked-list-cycle(判断链表中是否存在环)](./LeetCode/Doc/判断链表中是否存在环.md) - [word-break(单词切分)](./LeetCode/Doc/单词切分.md) - [word-break-ii(单词切分2)](./LeetCode/Doc/单词切分2.md) - [copy-list-with-random-pointer(拷贝具有随机指针的链表)](./LeetCode/Doc/拷贝具有随机指针的链表.md) - [single-number(出现一次的数)](./LeetCode/Doc/出现一次的数.md) - [**single-number-ii(出现一次的数2)**](./LeetCode/Doc/出现一次的数2.md) - [candy(糖果问题)](./LeetCode/Doc/糖果问题.md) - [Gas-station(加油站问题)](./LeetCode/Doc/加油站问题.md) - [clone-graph(图的复制)](./LeetCode/Doc/图的复制.md)