11 2016 档案

摘要:Wiggle Subsequence 最长扭动子序列 思路1:动态规划。状态dp[i]表示以nums[i]为末尾的最长wiggle子序列的长度。时间是O(n^2). 1 public class Solution { 2 public int wiggleMaxLength(int[] nums) 阅读全文
posted @ 2016-11-30 23:48 coldyan 阅读(209) 评论(0) 推荐(0)
摘要:1 离线指标 1.1 LogLoss 1.1.1 KL散度 logloss使用KL散度来计算。设样本的真实分布为P,预测分布为Q,则KL散度定义如下: 这里可以通俗地把KL散度理解为相同事件空间里两个概率分布的相异情况。KL散度越小,预测分布越接近真实分布。 KL散度的物理意义是:使用分布Q来对真实 阅读全文
posted @ 2016-11-22 11:11 coldyan 阅读(8436) 评论(0) 推荐(1)
摘要:merge sort 空间复杂度:O(n)(sort list是O(1)) 时间复杂度为O(nlgn) 稳定性:稳定排序 先局部有序,再整体有序 1 public class Solution { 2 /** 3 * @param A an integer array 4 * @return voi 阅读全文
posted @ 2016-11-20 20:46 coldyan 阅读(679) 评论(0) 推荐(0)
摘要:1 n-gram模型与auto complete n-gram模型是假设文本中一个词出现的概率只与它前面的N-1个词相关。auto complete的原理就是,根据用户输入的词,将后续出现概率较大的词组显示出来。因此我们可以基于n-gram模型来对用户的输入作预测。 我们的实现方法是:首先用mapr 阅读全文
posted @ 2016-11-20 00:51 coldyan 阅读(665) 评论(0) 推荐(0)
摘要:Different Ways to Add Parentheses 加括号的不同方式 思路:分治地求出一个运算符的左边部分和右边部分的结果,将它们两两组合运算。优化的方式是用一个hash表记录所有字串的中间结果,避免重复计算。 1 public class Solution { 2 Map<Stri 阅读全文
posted @ 2016-11-16 16:25 coldyan 阅读(662) 评论(0) 推荐(0)
摘要:1 pagerank算法介绍 1.1 pagerank的假设 数量假设:每个网页都会给它的链接网页投票,假设这个网页有n个链接,则该网页给每个链接平分投1/n票。 质量假设:一个网页的pagerank值越大,则它的投票越重要。表现为将它的pagerank值作为它投票的加权值。 1.2 矩阵表示形式 阅读全文
posted @ 2016-11-13 21:53 coldyan 阅读(397) 评论(0) 推荐(0)
摘要:Bulb Switcher 灯泡开关 思路:除了平方数以外,其他所有位置的灯泡最终都被开关了偶数次,因此最终都为0。问题等价于求1~n中平方数的个数。 1 public class Solution { 2 public int bulbSwitch(int n) { 3 return (int)M 阅读全文
posted @ 2016-11-13 14:09 coldyan 阅读(208) 评论(0) 推荐(0)
摘要:1 将决策树看作条件概率分布 决策树可表示为给定特征条件下类的条件概率分布。即,将特征空间划分为互不相交的单元,每个单元对应于决策树中一条从根节点到叶节点的路径。每个单元对应一个条件概率分布。一个好的决策树在叶节点上的条件概率(即一个单元内的条件概率)应该偏向某个类,即保证叶子节点内的数据的熵很小。 阅读全文
posted @ 2016-11-10 00:31 coldyan 阅读(401) 评论(0) 推荐(0)
摘要:Bitwise AND of Numbers Range 实现范围内的按位与 思路:首先将m与n做按位与得到tmp。对于tmp中为0的位,则最终结果也一定为0;对于tmp中为1的位,则要看m到n中间有没有数的这一位为0,方法是:将m的这一位及其低位全部置1得到数a,如果a<n,则说明m到n中间存在这 阅读全文
posted @ 2016-11-09 15:50 coldyan 阅读(285) 评论(0) 推荐(0)
摘要:Substring with Concatenation of All Words 寻找所有词连接的子串 思路:由于该字串是所有词典中的词连接的,所以该字串长度固定。因此本题可以看作一个滑动窗口的题。为了去除重复工作,每次滑动一个单词的长度,因此起始位置就有n种(n为单词长度)。每种起始位置的滑动策 阅读全文
posted @ 2016-11-07 23:43 coldyan 阅读(2532) 评论(0) 推荐(0)
摘要:Best Time to Buy and Sell Stock 只能买1次的股票问题 思路:遍历数组的同时,记录到当前天为止的历史最低价格,那么在当前天卖出的最大收益就是当前价格减去历史最低价格,同时更新历史最大收益。 1 public class Solution { 2 public int m 阅读全文
posted @ 2016-11-07 17:39 coldyan 阅读(330) 评论(0) 推荐(0)
摘要:Copy List with Random Pointers 复制带随机指针的链表 思路1:使用哈希表,需要消耗O(N)的额外空间。 1 public class Solution { 2 /** 3 * @param head: The head of linked list with a ran 阅读全文
posted @ 2016-11-06 13:11 coldyan 阅读(324) 评论(0) 推荐(0)
摘要:1. 图论算法(用BFS,DFS) 拓扑排序 克隆图 找连通块 六度问题 2.BFS 队列实现; 树中的BFS与图中的BFS有什么不同?树中没有环,图中有环需要一个set来记录搜索过的节点; 应用:图的遍历,最短路径 3 搜索 碰到找所有解决方案的题,一定是DFS搜索。搜索题的套路比较固定。 阅读全文
posted @ 2016-11-02 22:05 coldyan 阅读(225) 评论(0) 推荐(0)