摘要: 原题地址按"."分割,然后比较需要注意的地方:1. 多于的前缀0。例如"001"="1"2. 多余的后缀版本号。例如"1"="1.0.0.0"代码: 1 int compareVersion(string version1, string version2) { 2 int last1 = -1... 阅读全文
posted @ 2015-01-26 21:16 李舜阳 阅读(144) 评论(0) 推荐(0)
摘要: 原题地址寻找主元素非常巧妙的方法代码: 1 int majorityElement(vector &num) { 2 int candidate = 0; 3 int count = 0; 4 5 for (int i = 0; i < num.size(); i++)... 阅读全文
posted @ 2015-01-26 20:28 李舜阳 阅读(130) 评论(0) 推荐(0)
摘要: 原题地址典型的地图寻路问题如何计算当前位置最少需要多少体力呢?无非就是在向下走或向右走两个方案里做出选择罢了。如果向下走,看看当前位置能提供多少体力(如果是恶魔就是负数,如果是草药就是正数),如果当前位置能够提供的体力比向下走所需要的最小体力还多,那么当前位置只需要1的体力就够了;否则,计算出额外需... 阅读全文
posted @ 2015-01-26 18:59 李舜阳 阅读(619) 评论(0) 推荐(0)
摘要: 原题地址先将数字转成字符串,然后排序,让能够组成更大数字的字符串放在前面,最后拼接成完整的字符串即可。有种很巧妙的方法判断两个字符串的大小关系,假设两个字符串是A,B,则比较AB和BA,若AB比BA大,说明A应该放在前面,即A &num) { 2 string res; 3 ... 阅读全文
posted @ 2015-01-26 16:51 李舜阳 阅读(383) 评论(0) 推荐(0)
摘要: 原题地址非常经典的题目了。双栈法,一个普通栈,一个最小值栈入栈时:除了入普通栈之外,如果当前待入栈元素小于等于最小值栈顶元素,那么同时入最小值栈出栈时:除了出普通栈之外,如果当前待出栈元素小于等于最小值栈顶元素,那么同时出最小值栈查看栈顶元素:返回普通栈顶元素查看最小元素:返回最小值栈顶元素代码: ... 阅读全文
posted @ 2015-01-26 15:23 李舜阳 阅读(545) 评论(0) 推荐(0)
摘要: 原题地址方法I:枚举依次枚举前缀,然后检验改进1:只需从长到短枚举最短的字符串的前缀改进2:检验前缀合法性时可以进行剪枝优化,加快搜索效率时间复杂度不不太好分析,加上改进之后效率还不错。方法II:字典树时间复杂度O(nm),其中n是字符串个数,m是字符串长度代码: 1 struct TrieNode... 阅读全文
posted @ 2015-01-26 15:05 李舜阳 阅读(143) 评论(0) 推荐(0)
摘要: 原题地址有人些的做法是判断中序遍历序列是否是回文串,一开始我觉得挺有道理,但是琢磨了一阵觉得没那么简单。比如下面这个树: 1 / 1 / 1中序遍历序列是"111",虽然是回文串但这棵树明显不是对称的。如果要是把NULL也算进去呢?还是上面... 阅读全文
posted @ 2015-01-26 14:40 李舜阳 阅读(167) 评论(0) 推荐(0)
摘要: 原题地址n!含有多少个因子10,则结尾有多少个010=2*5,而2的个数肯定比5多,所以n!含有多少个因子5,则结尾有多少个0如何计算n!有多少个因子5呢?比如n=13,则:n! = 13 * 12 * 11 * 10 * 9 * 8 * 7 * 6 * 5 * 4 * 3 * 2 * 1 ... 阅读全文
posted @ 2015-01-26 12:21 李舜阳 阅读(222) 评论(0) 推荐(0)
摘要: 原题地址因为是道简单题,所以最简单的字符串匹配应该也能过,但还是练习一下KMP算法为好。KMP算法的介绍可以参考这篇以后有时间试试Boyer-Moore算法代码: 1 int strStr(char *haystack, char *needle) { 2 if (!needle[0]) ret... 阅读全文
posted @ 2015-01-26 11:50 李舜阳 阅读(171) 评论(0) 推荐(0)
摘要: 原题地址方法I:排序+字典序枚举。生成字典序的方法见这里方法II:排列树(其实就是DFS)下图是一个排列树,每一层标红的字符是已经枚举完毕的部分,在后代节点中也不再变化;下划线的部分是待枚举排列的部分,在后代节点中将依次枚举。可见,排列树将问题一层一层分解为子问题,非常直观。如何从一个节点生成儿子节... 阅读全文
posted @ 2015-01-26 11:08 李舜阳 阅读(290) 评论(0) 推荐(0)