2016年3月11日

Next Permutation

摘要: 不懂为什么这么做 在当前序列中,从尾端向前寻找两个相邻元素,前一个记为*i,后一个记为*t,并且满足*i < *t。然后再从尾端 寻找另一个元素*j,如果满足*i < *j,即将第i个元素与第j个元素对调,并将第t个元素之后(包括t)的所有元 素颠倒排序,即求出下一个序列了。 STL中有这个next 阅读全文

posted @ 2016-03-11 17:50 RenewDo 阅读(132) 评论(0) 推荐(0) 编辑

ubstring with Concatenation of All Words

摘要: You are given a string, s, and a list of words, words, that are all of the same length. Find all starting indices of substring(s) in s that is a conca 阅读全文

posted @ 2016-03-11 16:16 RenewDo 阅读(246) 评论(0) 推荐(0) 编辑

Divide Two Integers

摘要: 思路:不能单步减法,时间会超时。当第一次减完后被减数仍大减数,这时减数可采用2的指数增加,直到大于被减数后,被减数缩小,再次重新这个过程。 注意调试时,出现的错误: int dividend = -2147483648; long b=-dividend;(其实b仍等于 -2147483648,因为 阅读全文

posted @ 2016-03-11 14:28 RenewDo 阅读(184) 评论(0) 推荐(0) 编辑

Merge k Sorted Lists

摘要: priority_queue()讲解: priority_queue 优先级队列是一个拥有权值概念的单向队列queue,在这个队列中,所有元素是按优先级排列的(也可以认为queue是个按进入队列的先后做为优先级的优先级队列——先进入队列的元素优先权要高于后进入队列的元素)。在计算机操作系统中,优先级 阅读全文

posted @ 2016-03-11 10:16 RenewDo 阅读(112) 评论(0) 推荐(0) 编辑

大量数据(几亿)里筛素数

摘要: 原理:首先利用C的底层函数memset将整个数据一开始都置为素数。 然后开始考虑,一般来说素数的倍数肯定是合数了,所以我们可以用素数乘以其他整数来置部分数据为合数,其余数据则是素数。 但这样有个问题:重复计算太多,对于数据量很大,这种做法不可取。 具体那些重复了呢:当数为9时,用9乘以素数2;当数为 阅读全文

posted @ 2016-03-11 09:35 RenewDo 阅读(201) 评论(0) 推荐(0) 编辑

导航