diff --git a/README.md b/README.md index 7ee0bf57..ded19a67 100644 --- a/README.md +++ b/README.md @@ -9,8 +9,6 @@ - - ### :pencil2: 算法 - [剑指 Offer 题解](https://github.com/CyC2018/InnterviewNotes/blob/master/notes/剑指%20offer%20题解.md) diff --git a/other/算法与数据结构.md b/other/算法与数据结构.md new file mode 100644 index 00000000..d1e4ddf3 --- /dev/null +++ b/other/算法与数据结构.md @@ -0,0 +1,151 @@ +# Algorithm +leetcode/lintcode上的算法题 + +**关于问题的答案和解体的思路,可以移步 : https://github.com/zhaozhengcoder/Algorithm** + +### About + + 这个仓库最初的想法是把lintcode/lintocde上面的算法题目整理一下,因为很多题目太多了显得太乱了,就不继续在GitHub上面写了,以前写的一部分移到我的博客上面了。 + GitHub上面打算整理一些比较典型 或者是 自己思考过的觉得很好的问题。 + + + 在博客上面开了两个专栏 + + 1. 数据结构/算法导论 : + https://www.jianshu.com/nb/12397278 + + 2. OJ练习题 : + https://www.jianshu.com/nb/9973135 + + 推荐两篇自己对 递归搜索和动态规划 的理解的blog : + + 1. https://www.jianshu.com/p/5eb4da919efe + + 2. https://www.jianshu.com/p/6b3a2304f63f + + + +### 题目的索引 + GITHUB上面打算整理一些比较典型 或者是 自己思考过的觉得很好的问题。 + + 1.从数据结构的角度索引 : + + a. 数组 + + 两数之和 + + 连续最大子数组 + + 乘积最大子数组 + + 买卖股票的最佳时机1,2,3 + + 买卖股票的最佳时机1:寻找数组里面的最大上升子序列 + 买卖股票的最佳时机2:寻找数组里面所有的上升子序列 + 买卖股票的最佳时机3:寻找数组里面两个不重合的上升子序列,并且使他们的和最大 to-do + + 区间合并(将有交集的区间合并) + + 寻找缺失的数 + + 1. 一个顺序的数组[1,2,3,5,6],缺少了一个数字,如何找到它? + + 2. 一个arr的数组,只有一个数字出现了一次,其他都出现了两次,如何找到它? + + 数组的近似划分(将一个数组分成两个,但是差最小) + + 数组里面第k大的数 + + 跳跃游戏1,2 + + 跳跃游戏1: + 给出一个非负整数数组,你最初定位在数组的第一个位置, + 数组中的每个元素代表你在那个位置可以跳跃的最大长度, + 返回 是否能到达数组的最后一个位置 + + 跳跃游戏2: + 给出一个非负整数数组,你最初定位在数组的第一个位置, + 数组中的每个元素代表你在那个位置可以跳跃的最大长度,    + 返回 使用最少的跳跃次数到达数组的最后一个位置 + + a+. 二维矩阵 + + 顺时针打印二维矩阵 + + 给出一个二维矩阵,找到一个路径(从某个左上角到某个角右下)使这条路径的值最大 + + b. 链表 + + c. 字符串 + + 最长公共子序列(并不是连续的) + + 最长回文子串 + + d. 二叉树 + + 返回一个平衡二叉树的第k大的节点 + + 二叉树的最低公共祖先 + + 非递归遍历二叉树 + + e. 图 + + 最短路径 + + 深度/广度优先遍历 + + 2. 从算法的角度建立索引 : + + a. 递归搜索问题 + + N后问题 + + 全排列 + + 组合问题1,2 + + b. 动态规划 + + 背包问题1,2 + + 数组的近似划分(将一个数组分成两个,但是差最小) + + 跳跃游戏1,2 + + 给出一个二维矩阵,找到一个路径(从某个左上角到某个角右下)使这条路径的值最大 + + + 3. 常用 + + a. 排列/组合 + + b. 深度优先遍历 + + c. 最短路径 + + 4. 智力题(算法本身很简单,就是想不到的那种) + + 最多有多少个点在同一条直线上 + + +### Others + + 1. 类似于系统设计的题目 + + 带最小值的栈/队列 + + url长链接转短链接 + + 2. 解决特定问题 + + 并查集 + + 布隆过滤器 + + + +如果你对机器学习的算法感兴趣,欢迎共同讨论: + +https://github.com/zhaozhengcoder/Machine-Learning