2014-04-29
00:56题目:不用算数运算,完成加法。解法:那就位运算吧,用加法器的做法就可以了。代码: 1 // 18.1 add two numbers wihout
using arithmetic operator. 2 #include 3 using namespace std....
分类:
其他好文 时间:
2014-04-29 14:58:53
阅读次数:
383
2014-04-29
01:05题目:数数从0到n总共有多少个数字‘2’?解法:数位动态规划,可以O(log10(n))时间内解决。代码: 1 // 18.4 Count the
number of 2s from 0 to n. 2 #include 3 using namespace std;....
分类:
其他好文 时间:
2014-04-29 14:44:34
阅读次数:
380
2014-04-29
01:51题目:你有一个文本文件,每行一个单词。给定两个单词,请找出这两个单词在文件中出现的其中一对位置,使得这两个位置的距离最短。解法:我的思路是建立倒排索引,计算出所有单词出现的所有位置。下面代码只给出了两个索引的处理方法。倒排索引一般以链表的形式出现,通过顺序扫描两个链表...
分类:
其他好文 时间:
2014-04-29 14:43:33
阅读次数:
388
2014-04-29
01:02题目:从m个整数里随机选出n个整数,要求等概率。解法:和洗牌的算法类似,每次随机抽出一个数,抽n次即可。时间复杂度O(m *
n),空间复杂度O(m)。代码: 1 // 18.3 pick m integers randomly from an array of n ...
分类:
其他好文 时间:
2014-04-29 14:42:32
阅读次数:
345
2014-04-29
00:59题目:设计一个洗牌算法,效率尽量快点,必须等概率。解法:每次随机抽一张牌出来,最后都抽完了,也就洗好了。时间复杂度O(n^2),请看代码。代码: 1
// 18.2 shuffle a deck of 52 cards, it must be perfect rand...
分类:
其他好文 时间:
2014-04-29 14:38:25
阅读次数:
473