h******k 发帖数: 810 | 1 本周面了某L公司,说说经历吧。一共五场九个人,除第一场host manager一人半小时
,其它都是两人一master一shadow一小时。
1. 介绍公司产品,发展方向;本人介绍做的项目,most challenging project.
2. 150题8.2:imagine a robot sitting on the upper left hand corner of an NxN
grid. The robot can only move in two directions: right and down. How many possible paths are there for the robot?讨论时间复杂度空间复杂度。如何优化。
3. given two linked lists of object references, how to check if the third
one is a merge of these two, notice that different references could point to the same object, and the merge is not unique, e.g. lista = {A&, A&, B&}; listb = {C&, A&}; listm could be {C&, A&, A&, A&, B&} or {A&, A&, C&, A&, B&} or else, but not {A&, A&, A&, C&, B&}.
4. double sqrt(double d) 不能用牛顿法。
5. given a set of points on a cartesian plane, return maximum number of
points lying on the same line. Need O(n^2) in time complexity.
6. design bit.ly url shortening web service。算法设计,后端存储,中间层cache
,前端load balance,最后是web analytics。
7. 见team lead,讨论做的project具体细节。
周二面的,周四收拒信,不觉得特别可惜。
感受一:某公司做的是recruiting business,结果自己的recruiting process混乱不堪
。电面完了要on-site,然后两个星期没消息。突然一天说要我第二天去,只能改期了。面试中一个面我的人过半小时都没到,我只好打电话给recruiter临时换人。
感受二:工程师自我感觉良好,解题一定要按他们的思路来,当我提出其它解法时,不
加思索就被否决,写代码过程中频频被打断,非常不礼貌。
总体说L与成熟公司还有距离,未来看造化了。
------------------------------------------------------------------------
补充下:
3. 我开始说就是merge sort的变种,
bool isMerge(lista, listb, listm)
{
... ...
if ( lista.get(i) == listm.get(k) ) {
i++; k++;
} else if ( listb.get(j) == listm.get(k) ) {
j++; k++;
} else {
return false
}
结果被面试人教训了一顿。其实他期待的解法是从尾向头merge,一边merge一边删除
lista/listb/listm里面的元素。termination是listm.empty()。code可能漂亮
点,不过真不是唯一解法啊。
4. 要分d<0, 01情况。然后写binary search代码的时候,面试人说这样收敛
不够快,反复打断我。
6. bit.ly url shortening web service 就是:
1. 用户输入url,返回短的bit.ly url。比如:www.google.com,返回bit.ly/G。
2. 用户访问bit.ly url,redirect到真url。比如 http://bit.ly/G -> http://www.google.com。
这题主要考系统设计,没要写具体算法。 | i***e 发帖数: 452 | 2 赞面经。 同感, 他们家recruitor比较烂了, 动不动放鸽子了。
2。 用公式(注意溢出)或者用DP了 C(m,n) = C(m, n-1) + C(m-1, n-1)。
3. 第三题题目不是很清楚了, merge 的规则是啥, 还是把所有的情况枚举出来然后
一一跟第三个比较? 这样不是停麻烦的吗?
4.binary search 应该就行
5.hash table 进行计数
6.没看懂题目意思了.
对于感受二, 我身有同感了。 这样人最恶心了。 以前Onsite的时候, 感觉他们就是
背着答案去, 你的解法他老人家不care了。而后不断打断你了。 面完之后觉得很恶心
了. 碰到这种人只能说运气比较差了。 | P**********c 发帖数: 3417 | 3 第3题应该是扫一遍吧,两个指针分别指向两个list, 如果碰到list1的,list1的++,
如果碰到list2的list2的++. 如果碰到不是当前list1 or list2的指针指向的则退出。
reference判断是不是一样应该判断他们的地址是不是一个?
第2题careercup上写程序的是有障碍的情况。一般情况只给了公式。这个是一般情况写程序吗?
第5题也是careercup上的原题。
第6题同样没看懂。URL shortening怎么跟cache, loading balancing什么联系上的?是说hashtable放在不同的机器上所以要考虑distributed system的问题么?
【在 i***e 的大作中提到】 : 赞面经。 同感, 他们家recruitor比较烂了, 动不动放鸽子了。 : 2。 用公式(注意溢出)或者用DP了 C(m,n) = C(m, n-1) + C(m-1, n-1)。 : 3. 第三题题目不是很清楚了, merge 的规则是啥, 还是把所有的情况枚举出来然后 : 一一跟第三个比较? 这样不是停麻烦的吗? : 4.binary search 应该就行 : 5.hash table 进行计数 : 6.没看懂题目意思了. : 对于感受二, 我身有同感了。 这样人最恶心了。 以前Onsite的时候, 感觉他们就是 : 背着答案去, 你的解法他老人家不care了。而后不断打断你了。 面完之后觉得很恶心 : 了. 碰到这种人只能说运气比较差了。
| q****x 发帖数: 7404 | 4 how to solve 5 & 6?
i don't understand 3. what is difference reference pointing to the same
object? so each reference has a name that is also stored in the list? why
the 1st 2 are ok while the 3rd is not?
NxN
possible paths are there for the robot?讨论时间复杂度空间复杂度。如何优化。
to the same object, and the merge is not unique, e.g. lista = {A&, A&, B&};
listb = {C&, A&}; listm could be {C&, A&, A&, A&, B&} or {A&, A&, C&, A&, B&
} or else, but not {A&, A&, A&, C&, B&}.
【在 h******k 的大作中提到】 : 本周面了某L公司,说说经历吧。一共五场九个人,除第一场host manager一人半小时 : ,其它都是两人一master一shadow一小时。 : 1. 介绍公司产品,发展方向;本人介绍做的项目,most challenging project. : 2. 150题8.2:imagine a robot sitting on the upper left hand corner of an NxN : grid. The robot can only move in two directions: right and down. How many possible paths are there for the robot?讨论时间复杂度空间复杂度。如何优化。 : 3. given two linked lists of object references, how to check if the third : one is a merge of these two, notice that different references could point to the same object, and the merge is not unique, e.g. lista = {A&, A&, B&}; listb = {C&, A&}; listm could be {C&, A&, A&, A&, B&} or {A&, A&, C&, A&, B&} or else, but not {A&, A&, A&, C&, B&}. : 4. double sqrt(double d) 不能用牛顿法。 : 5. given a set of points on a cartesian plane, return maximum number of : points lying on the same line. Need O(n^2) in time complexity.
| P**********c 发帖数: 3417 | 5 1, 2都OK, 因为
1. listb的第1个,lista第2个(或者listb第二个,doesn't make difference),
lista第2个,listb第2个,lista第3个
2. lista第1,lista第2, listb第1, listb第2, lista第3
3不OK,因为
3. lista第1,lista第2, 第三个A&???? wrong.
化。
;
B&
【在 q****x 的大作中提到】 : how to solve 5 & 6? : i don't understand 3. what is difference reference pointing to the same : object? so each reference has a name that is also stored in the list? why : the 1st 2 are ok while the 3rd is not? : : NxN : possible paths are there for the robot?讨论时间复杂度空间复杂度。如何优化。 : to the same object, and the merge is not unique, e.g. lista = {A&, A&, B&}; : listb = {C&, A&}; listm could be {C&, A&, A&, A&, B&} or {A&, A&, C&, A&, B& : } or else, but not {A&, A&, A&, C&, B&}.
| P**********c 发帖数: 3417 | 6 5是careercup书上原题,hashtable存斜率和y intercept,数个数.
化。
;
B&
【在 q****x 的大作中提到】 : how to solve 5 & 6? : i don't understand 3. what is difference reference pointing to the same : object? so each reference has a name that is also stored in the list? why : the 1st 2 are ok while the 3rd is not? : : NxN : possible paths are there for the robot?讨论时间复杂度空间复杂度。如何优化。 : to the same object, and the merge is not unique, e.g. lista = {A&, A&, B&}; : listb = {C&, A&}; listm could be {C&, A&, A&, A&, B&} or {A&, A&, C&, A&, B& : } or else, but not {A&, A&, A&, C&, B&}.
| q****x 发帖数: 7404 | 7 是说每个list的偏序关系都必须保持?
what if list_a = { A& B& }, list_b = {B& A&}?
【在 P**********c 的大作中提到】 : 1, 2都OK, 因为 : 1. listb的第1个,lista第2个(或者listb第二个,doesn't make difference), : lista第2个,listb第2个,lista第3个 : 2. lista第1,lista第2, listb第1, listb第2, lista第3 : 3不OK,因为 : 3. lista第1,lista第2, 第三个A&???? wrong. : : 化。 : ; : B&
| P**********c 发帖数: 3417 | 8 对,我觉得就是这个意思。
这个题是给你一个list,看它是不是那两个list的merge, 不是让你遍历所有merge的情
况,所以有多少情况都无所谓。
你这个例子应该是A& B& B& A&或者B& A& A& B&都可以。
【在 q****x 的大作中提到】 : 是说每个list的偏序关系都必须保持? : what if list_a = { A& B& }, list_b = {B& A&}?
| q****x 发帖数: 7404 | 9
写程序吗?
这个怎么做?先两两算直线,用y = ax + b和x = k表示,然后找出现频度最高的?
?是说hashtable放在不同的机器上所以要考虑distributed system的问题么?
【在 P**********c 的大作中提到】 : 第3题应该是扫一遍吧,两个指针分别指向两个list, 如果碰到list1的,list1的++, : 如果碰到list2的list2的++. 如果碰到不是当前list1 or list2的指针指向的则退出。 : reference判断是不是一样应该判断他们的地址是不是一个? : 第2题careercup上写程序的是有障碍的情况。一般情况只给了公式。这个是一般情况写程序吗? : 第5题也是careercup上的原题。 : 第6题同样没看懂。URL shortening怎么跟cache, loading balancing什么联系上的?是说hashtable放在不同的机器上所以要考虑distributed system的问题么?
| P**********c 发帖数: 3417 | 10 对。
【在 q****x 的大作中提到】 : : 写程序吗? : 这个怎么做?先两两算直线,用y = ax + b和x = k表示,然后找出现频度最高的? : ?是说hashtable放在不同的机器上所以要考虑distributed system的问题么?
| | | q****x 发帖数: 7404 | 11 如果这样,有点麻烦。
【在 P**********c 的大作中提到】 : 对,我觉得就是这个意思。 : 这个题是给你一个list,看它是不是那两个list的merge, 不是让你遍历所有merge的情 : 况,所以有多少情况都无所谓。 : 你这个例子应该是A& B& B& A&或者B& A& A& B&都可以。
| P**********c 发帖数: 3417 | 12 为什么麻烦?扫一遍不行吗?
【在 q****x 的大作中提到】 : 如果这样,有点麻烦。
| h******k 发帖数: 810 | 13 PixelClassic说的基本都对。
补充下:
3. 我开始说就是merge sort的变种,
bool isMerge(lista, listb, listm)
{
... ...
if ( lista.get(i) == listm.get(k) ) {
i++; k++;
} else if ( listb.get(j) == listm.get(k) ) {
j++; k++;
} else {
return false
}
结果被面试人教训了一顿。其实他期待的解法是从尾向头merge,一边merge一边删除
lista/listb/listm里面的元素。termination是listm.empty()。code可能漂亮
点,不过真不是唯一解法啊。
4. 要分d<0, 01情况。然后写binary search代码的时候,面试人说这样收敛
不够快,反复打断我。
6. bit.ly url shortening web service 就是:
1. 用户输入url,返回短的bit.ly url。比如:www.google.com,返回bit.ly/G。
2. 用户访问bit.ly url,redirect到真url。比如 http://bit.ly/G -> http://www.google.com。 | g*****k 发帖数: 623 | 14 我个人交得好像第3题不对。
请考虑这个例子。
lista: &A &C
listb: &A &D
listm: &A &D &A &C
明显listm是lista 和 listb 的valid merge。
但是你的code将会返回false
其实从后往前作也一样会有这样的问题。
应该用backtracking来解这题。
lista.get(i)==listb.get(j)==listm.get(k),
那么就是返回剩下的子数组匹配的问题。
lista[i+1..]
listb[j..]
listm[k+1..]
当如上子数组不匹配时,我们将检测如下子数组
lista[i..]
listb[j+1..]
listm[k+1..]
就是算法效率不高。
期待高人指点
PixelClassic说的基本都对。
补充下:
3. 我开始说就是merge sort的变种,
if ( lista.get(i) == listm.get(k) ) {
i++; k++;
} else if ( listb.get(j) == listm.get(k) ) {
j++; k++;
} else {
return false
}
结果被面试人教训了一顿。其实他期待的解法是从尾向头merge,一边merge一边删除
lista/listb里面的元素。termination是lista.empty && listb.empty。code可能漂亮
点,不过真不是唯一解法啊。
4. 要分d<0, 01情况。然后写binary search代码的时候,面试人说这样收敛
不够快,反复打断我。
6. bit.ly url shortening web service 就是:
1. 用户输入url,返回短的bit.ly url。比如:www.google.com,返回bit.ly/G。
2. 用户访问bit.ly url,redirect到真url。比如 http://bit.ly/G -> http://www.google.com。
【在 h******k 的大作中提到】 : PixelClassic说的基本都对。 : 补充下: : 3. 我开始说就是merge sort的变种, : bool isMerge(lista, listb, listm) : { : ... ... : if ( lista.get(i) == listm.get(k) ) { : i++; k++; : } else if ( listb.get(j) == listm.get(k) ) { : j++; k++;
| P**********c 发帖数: 3417 | 15 有个疑问。
notice that different references could point to the same object
这个条件的考点是什么?多个reference point to same object的时候,是算相等呢还
是算不相等?
【在 h******k 的大作中提到】 : PixelClassic说的基本都对。 : 补充下: : 3. 我开始说就是merge sort的变种, : bool isMerge(lista, listb, listm) : { : ... ... : if ( lista.get(i) == listm.get(k) ) { : i++; k++; : } else if ( listb.get(j) == listm.get(k) ) { : j++; k++;
| P**********c 发帖数: 3417 | 16 不知道题目对reference的要求是什么样子的。不同的reference可以指向同一个object, 但是两个list里有重复的reference吗?楼主举的只是个例子,只有reference type.
【在 g*****k 的大作中提到】 : 我个人交得好像第3题不对。 : 请考虑这个例子。 : lista: &A &C : listb: &A &D : listm: &A &D &A &C : 明显listm是lista 和 listb 的valid merge。 : 但是你的code将会返回false : 其实从后往前作也一样会有这样的问题。 : 应该用backtracking来解这题。 : lista.get(i)==listb.get(j)==listm.get(k),
| g*****k 发帖数: 623 | 17 这个hashtable的hashcode()怎么搞定?
斜率本来就是double了,已经不好搞了,这个再加个y intercept,该如何构建这个
hash function?
【在 P**********c 的大作中提到】 : 5是careercup书上原题,hashtable存斜率和y intercept,数个数. : : 化。 : ; : B&
| P**********c 发帖数: 3417 | 18 careercup书上是(slop*1000)|(y intercept*1000), 不知道算不算好的hash function.
它是Java code, 所以默认conflicts是自动resolve的。
【在 g*****k 的大作中提到】 : 这个hashtable的hashcode()怎么搞定? : 斜率本来就是double了,已经不好搞了,这个再加个y intercept,该如何构建这个 : hash function?
| s*******7 发帖数: 64 | 19 第五题为啥是O(n^2), 不应该是O(n^3) 吗 | P**********c 发帖数: 3417 | 20 所有点两两构成直线,是O(n^2)吧。
【在 s*******7 的大作中提到】 : 第五题为啥是O(n^2), 不应该是O(n^3) 吗
| | | s*******7 发帖数: 64 | 21 是的,但是构成直线以后,不是要对其他所有点遍历一次吗,确定哪些点在此直线上
【在 P**********c 的大作中提到】 : 所有点两两构成直线,是O(n^2)吧。
| s*******7 发帖数: 64 | 22 哦,我明白了,是O(n^2)
【在 P**********c 的大作中提到】 : 所有点两两构成直线,是O(n^2)吧。
| P**********c 发帖数: 3417 | 23 不是,hashtable的key是直线,构建直线的时候同时数个数,同时update个数最多的那
条线。构建完hasthtable结果救出来了。
【在 s*******7 的大作中提到】 : 是的,但是构成直线以后,不是要对其他所有点遍历一次吗,确定哪些点在此直线上
| h**********8 发帖数: 267 | | g*****i 发帖数: 2162 | 25 同意
【在 g*****k 的大作中提到】 : 我个人交得好像第3题不对。 : 请考虑这个例子。 : lista: &A &C : listb: &A &D : listm: &A &D &A &C : 明显listm是lista 和 listb 的valid merge。 : 但是你的code将会返回false : 其实从后往前作也一样会有这样的问题。 : 应该用backtracking来解这题。 : lista.get(i)==listb.get(j)==listm.get(k),
| g*****i 发帖数: 2162 | 26 求sqrt那道什么方法比binarysearch收敛的快? wiki上有方法挑更好的初始值,但是我
觉得一般面试应该不要求那种方法吧.
【在 h******k 的大作中提到】 : PixelClassic说的基本都对。 : 补充下: : 3. 我开始说就是merge sort的变种, : bool isMerge(lista, listb, listm) : { : ... ... : if ( lista.get(i) == listm.get(k) ) { : i++; k++; : } else if ( listb.get(j) == listm.get(k) ) { : j++; k++;
| t**r 发帖数: 3428 | | l*****a 发帖数: 14598 | 28 obviously Linkedin
【在 t**r 的大作中提到】 : 谢谢LZ分享 : L公司是LUCENT?
| s*****y 发帖数: 897 | 29 弱问,这样子可以hash到同一个bucket吗?
slop和intercept都是double 数值阿,两条直线的slop和intercept之间肯定有一个很
小的偏差的啊。
我比较prefer用ax+by = c来表示一条直线。
function.
【在 P**********c 的大作中提到】 : careercup书上是(slop*1000)|(y intercept*1000), 不知道算不算好的hash function. : 它是Java code, 所以默认conflicts是自动resolve的。
| P**********c 发帖数: 3417 | 30 它这个意思不就是约到小数点后3位么,这个自己可以控制吧。
【在 s*****y 的大作中提到】 : 弱问,这样子可以hash到同一个bucket吗? : slop和intercept都是double 数值阿,两条直线的slop和intercept之间肯定有一个很 : 小的偏差的啊。 : 我比较prefer用ax+by = c来表示一条直线。 : : function.
| | | l*****a 发帖数: 14598 | 31 不要扣的那么细
有这个意思就得分了
【在 s*****y 的大作中提到】 : 弱问,这样子可以hash到同一个bucket吗? : slop和intercept都是double 数值阿,两条直线的slop和intercept之间肯定有一个很 : 小的偏差的啊。 : 我比较prefer用ax+by = c来表示一条直线。 : : function.
| s*****y 发帖数: 897 | 32 再弱问一个问题,
careercup 150上面代码如下:22 public double slope;
23 public double intercept;
24 private boolean infinite_slope = false;
25 public Line(GraphPoint p, GraphPoint q) {
26 if (Math.abs(p.x - q.x) > epsilon) { // if x’s are different
27 slope = (p.y - q.y) / (p.x - q.x); // compute slope
28 intercept = p.y - slope * p.x; // y intercept from y=mx+b
29 } else {
30 infinite_slope = true;
31 intercept = p.x; // x-intercept, since slope is infinite
32 }
33 }
34
35 public boolean isEqual(double a, double b) {
36 return (Math.abs(a - b) < epsilon);
37 }
38
39 @Override
40 public int hashCode() {
41 int sl = (int)(slope * 1000);
42 int in = (int)(intercept * 1000);
43 return sl | in;
44 }
当斜率是无穷的时候,它是这么做的
30 infinite_slope = true;
31 intercept = p.x; // x-intercept, since slope is infinite
但是slope却没有给值,这种情况下hashCode hash这种斜率是无穷的不就全乱了?
【在 l*****a 的大作中提到】 : 不要扣的那么细 : 有这个意思就得分了
| P**********c 发帖数: 3417 | 33 Java有自动赋固定初值吗?如果没有感觉就错了。有的话就没问题。
【在 s*****y 的大作中提到】 : 再弱问一个问题, : careercup 150上面代码如下:22 public double slope; : 23 public double intercept; : 24 private boolean infinite_slope = false; : 25 public Line(GraphPoint p, GraphPoint q) { : 26 if (Math.abs(p.x - q.x) > epsilon) { // if x’s are different : 27 slope = (p.y - q.y) / (p.x - q.x); // compute slope : 28 intercept = p.y - slope * p.x; // y intercept from y=mx+b : 29 } else { : 30 infinite_slope = true;
| a*****t 发帖数: 30 | | a**********2 发帖数: 340 | 35 3. 我觉得getback是对的, 从后往前也不对
6. 是不是就是用hash table + linked list啊,hash code和url都存disk,查询的时
候,如果不在memory就从disk load进来. 内存使用率到达百分之多少就把不常用的干掉
【在 g*****k 的大作中提到】 : 我个人交得好像第3题不对。 : 请考虑这个例子。 : lista: &A &C : listb: &A &D : listm: &A &D &A &C : 明显listm是lista 和 listb 的valid merge。 : 但是你的code将会返回false : 其实从后往前作也一样会有这样的问题。 : 应该用backtracking来解这题。 : lista.get(i)==listb.get(j)==listm.get(k),
| m**q 发帖数: 189 | 36 第3题有答案了么?
我也觉得getback是对的,这样的话要用DP
假设f(i,j)表示a的前i个字符和b的前j个字符是否与c的前i+j个
字符match,则
f(i-1, j) i>0 && a[i-1] == c[i+j-1]
f(i,j) = f(i, j-1) j>0 && b[j-1] == c[i+j-1]
0 otherwise
f(0,0) = 1
复杂度是O(mn),m,n分别是a,b的长度
干掉
【在 a**********2 的大作中提到】 : 3. 我觉得getback是对的, 从后往前也不对 : 6. 是不是就是用hash table + linked list啊,hash code和url都存disk,查询的时 : 候,如果不在memory就从disk load进来. 内存使用率到达百分之多少就把不常用的干掉
| m**q 发帖数: 189 | 37 第6题要是一台机器 && 可以放进内存的话可以用trie,
对于每个url逐层访问trie直到没有重复,比如
gucci.com, google.com
可以分别简化成 g, go
多机就不知道用啥了
干掉
【在 a**********2 的大作中提到】 : 3. 我觉得getback是对的, 从后往前也不对 : 6. 是不是就是用hash table + linked list啊,hash code和url都存disk,查询的时 : 候,如果不在memory就从disk load进来. 内存使用率到达百分之多少就把不常用的干掉
| y*******g 发帖数: 6599 | 38 short url应该用数据库来产生一个long integer unique id.
然后把这个int 转化成 base62( 26 大写字母,26小写字母,10个数字)。
多机器scale 由数据库来处理。面试官问的话可以讨论 这个应用读多于写,而且write
之后不会改,所以很多lock是不需要的。要是了解distributed database, nosql,
bigtable之类更可以show off一翻,我是不会啦。
这样生成的url是没法猜的,我感觉大部分short url service也的确如此。 如果要提
供用户自己输入short url的服务可以额外插入手动生成的id. 这样cost高一些,因为正
常产生id的时候要额外检查,但这种服务可以收费 O(∩_∩)O哈哈~ | y*******g 发帖数: 6599 | 39 比我面的难太多了。
NxN
possible paths are there for the robot?讨论时间复杂度空间复杂度。如何优化。
to the same object, and the merge is not unique, e.g. lista = {A&, A&, B&};
listb = {C&, A&}; listm could be {C&, A&, A&, A&, B&} or {A&, A&, C&, A&, B&
} or else, but not {A&, A&, A&, C&, B&}.
【在 h******k 的大作中提到】 : 本周面了某L公司,说说经历吧。一共五场九个人,除第一场host manager一人半小时 : ,其它都是两人一master一shadow一小时。 : 1. 介绍公司产品,发展方向;本人介绍做的项目,most challenging project. : 2. 150题8.2:imagine a robot sitting on the upper left hand corner of an NxN : grid. The robot can only move in two directions: right and down. How many possible paths are there for the robot?讨论时间复杂度空间复杂度。如何优化。 : 3. given two linked lists of object references, how to check if the third : one is a merge of these two, notice that different references could point to the same object, and the merge is not unique, e.g. lista = {A&, A&, B&}; listb = {C&, A&}; listm could be {C&, A&, A&, A&, B&} or {A&, A&, C&, A&, B&} or else, but not {A&, A&, A&, C&, B&}. : 4. double sqrt(double d) 不能用牛顿法。 : 5. given a set of points on a cartesian plane, return maximum number of : points lying on the same line. Need O(n^2) in time complexity.
| e***s 发帖数: 799 | 40 为什么从后往前不对呢?
能不能给个反例证明一下?
感觉好像可以。。。
干掉
【在 a**********2 的大作中提到】 : 3. 我觉得getback是对的, 从后往前也不对 : 6. 是不是就是用hash table + linked list啊,hash code和url都存disk,查询的时 : 候,如果不在memory就从disk load进来. 内存使用率到达百分之多少就把不常用的干掉
| | | e***s 发帖数: 799 | 41 好吧,我错了,是都不行。。。
【在 e***s 的大作中提到】 : 为什么从后往前不对呢? : 能不能给个反例证明一下? : 感觉好像可以。。。 : : 干掉
|
|