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
用mvc的思想去理解
数据源,adapter,xxxView的关系,写代码就轻松多了先写一个简单的gridview第一版:只有图片xml View Codejava代码public
class ActivityMain extends Activity { @Override ...
分类:
移动开发 时间:
2014-04-29 14:39:24
阅读次数:
970
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
2014-04-29
03:05题目:给定一个词典,其中某些词可能能够通过词典里其他的词拼接而成。找出这样的组合词里最长的一个。解法:Leetcode上有Word
Break这道题,和这题基本思路一致。代码: 1 // 18.7 Given a list of words, find out the...
分类:
其他好文 时间:
2014-04-29 14:30:17
阅读次数:
493
2014-04-29
02:27题目:找出10亿个数中最小的100万个数,假设内存可以装得下。解法1:内存可以装得下?可以用快速选择算法得到无序的结果。时间复杂度总体是O(n)级别,但是常系数不小。代码:
1 // 18.6 Find the smallest one million number....
分类:
其他好文 时间:
2014-04-29 14:27:13
阅读次数:
665
2014-04-29
04:36题目:最大子数组和的二位扩展:最大子矩阵和。解法:一个维度上进行枚举,复杂度O(n^2);另一个维度执行最大子数组和算法,复杂度O(n)。总体时间复杂度为O(n^3),还需要O(n)额外空间。代码:
1 // 18.12 Given an n x n matrix, ...
分类:
其他好文 时间:
2014-04-29 14:24:06
阅读次数:
404
2014-04-29
04:18题目:有一连串的数被读入,设计一个数据结构,能随时返回当前所有数的中位数。解法:用一个大顶堆,一个小顶堆将数分成数量最接近的两份,就能轻松得到中位数了。代码:
1 // 18.9 A stream of integers are passed to you, you....
分类:
其他好文 时间:
2014-04-29 14:16:52
阅读次数:
423
2014-04-29
04:22题目:给定一堆长度都相等的单词,和起点、终点两个单词,请从这堆单词中寻找一条变换路径,把起点词变成终点词,要求每次变换只能改一个字母。解法:Leetcode中有Word
Ladder,这题基本思路一致。代码: 1 // 18.10 Given a list of wo...
分类:
其他好文 时间:
2014-04-29 14:15:57
阅读次数:
507
PHP自定义函数只允许用return语句返回一个值,当return执行以后,整个函数的运行就会终止。有时要求函数返回多个值时,用return是不可以把值一个接一个地输出的。return语句可以返回任何类型的变量,这就是使自定义函数返回多个值的关键。代码:输出结果:Array(
[0] => The....
分类:
Web程序 时间:
2014-04-29 14:07:43
阅读次数:
577