a****n 发帖数: 1887 | 1 我一直是学CS的,在国内做过几年的程序员,不过个人觉得算法和设计的能力, 和本
科,研究生学位没什么关系,主要还是靠自己。
算法方面我也是新手,刚开始学习算法半年,之前也是只知道基本数据结构,算法的学
习资料,我推荐你可以看看MIT的CLRS的教学视频,貌似MIT网站上可以直接下载,我是
在emule 上down的,结合书一起看,先抓重点,之后再铺开看书,效果会比较好。另外
题一定要做, 推荐你做topcoder, 这个比较锻炼coding能力, 据说公司面试难度一般
在SRM div I, 250--350 的水平。
设计方面推荐你看 <敏捷开发> by Robert C martin, 里面重要讲了OOA&D的一些原则, 之后再看Design Pattern, 否则即使你觉得会设计模式了, 但是也不知道什么时候用。对于面试我觉得最好找些设计方面的面试的例题研究一下。 |
|
T*****J 发帖数: 193 | 2 多谢分享经验, 后面的人可以少走很多弯路。
则, 之后再看Design Pattern, 否则即使你觉得会设计模式了, 但是也不知道什么
时候用。对于面试我觉得最好找些设计方面的面试的例题研究一下。 |
|
r***w 发帖数: 142 | 3 这题目是google面试里dynamic programming典型的试题。就在google推荐看的材料里
面的例题。你老公准备不充分。 |
|
h*****g 发帖数: 312 | 4 小弟过几天电面,请教2个问题:
1. 把code 只写成下面这样可以吗?有没有必要写全?比如:没写#include<>...等
例题: implement a function to check if a tree is balanced or not.
int maxDepth(Tree * root) {
if(!root) {
return 0;
}
return 1+max(maxDepth(root->left),maxDepth(root->right));
}
int minDepth(Tree * root) {
if(!root) {
return 0;
}
return 1+min(minDepth(root->left),minDepth(root->right));
}
bool isBalanced(Tree * root) {
return maxDepth(root)-minDepth(root)<=1;
}
########################################### |
|
|
A*********r 发帖数: 564 | 6 呵呵,本来就是题集而已,不能要求太高。。
我觉得看得最舒服的一本书就是programming interviews exposed, 深入浅出的,解题
思路也很受用,要是再多加一些例题就更好了。。 |
|
y*********e 发帖数: 518 | 7 对头,是一个hash_map。
此题是Programming Pearls上第二章的例题。:) |
|
d*****t 发帖数: 41 | 8 来自主题: JobHunting版 - 一点面经~
是给定两个叶节点才只有一个PATH,但是题目是让从所有叶节点里找出两个有最长的
PATH。
画圆那题见PIE的Graphics and Bit Operations Problems那章,例题eighth of a
circle |
|
D*********y 发帖数: 876 | 9 对
这是career cup 150题里面的一个例题
我记得programming interview那本书里也讲到了这道题
new
as |
|
g*********s 发帖数: 1782 | 10 如果全实现一遍,是不是算法就算复习到顶了?
刚发现那道两等长排序数组找中数的题居然也是道练习而已。 |
|
f***g 发帖数: 214 | 11 个人觉得,差不多是。
不过对于面试来说,是一种事倍功半的方法 |
|
|
|
l*****a 发帖数: 14598 | 14 从现在趋势看
即使是骨骼,似乎难度也下降了。。。
感觉上那本书已经超出了范围
当然你能够吃透的话,更好 |
|
|
f***g 发帖数: 214 | 16 我还曾经想把里面的证明都搞明白。
看着看着就晕了。
关键是想要吃透要多长时间。
并且有些好像缺少了对于面试的针对性。
再举个例子:
C21习题中,提到了LCA。
不过我看现在都是一水儿的RMQ解法 |
|
E*****R 发帖数: 9 | 17 第一个问题是给了一个很大的文
件(不能完全放入内存),其中每一行存一个整数,要求判断这个文件中的数有没有重
复。
这个可以用bitmap,10^7个整数之需要1.25M内存就可以了。这是Programming Pearls
第一章的例题。 |
|
s**a 发帖数: 968 | 18 我给你就可以了
http://www.capitalone.com/careers/hiring/business_case.php?link
商业银行的case study多半都是credit card相关,C1本身就是credit card公司起家,
更是十之八九都问credit card。一般前两问要你说factor、assumption什么的,你要
尽量发散思维,说多了说错了损失不大,但是你说不出来就要扣分了。比如最爱问的就
是credit card portfolio的profit怎么决定,或者一个marketing campaign的
response rate受哪些影响。
后面的break even analysis很简单,别犯晕,列出方程基本就能答对了。
仔细看例题吧,万变不离其宗。有时间的话可以上wiki仔细研究一下credit card。
祝你好运。 |
|
a***n 发帖数: 3633 | 19 没有细看,不过这个好像是CLRS讲贪婪算法时的例题吧?
[1
interval |
|
d*******l 发帖数: 338 | 20 后来又想了想,如果这题每个工作都认为是具有相同价值的,确实就是贪心法的例题。
。。我之前遇到过的是每个工作还有个权值,让找出总权值最大的方案,这就能用到O(
nlogn)的dp了 |
|
m****t 发帖数: 555 | 21 好多老题啊。
其中G的2,6题就是CLRS书里的例题。
分别见书的4.1, 15.1 |
|
x****1 发帖数: 118 | 22 Google onsite归来,回馈本版,贡献一点面经和体会。记题的能力不是太好,就捡记
得住的说吧。废话不说,直接上题:
Phone screen:
先问了10道左右的小题,都是概念性的。
包括OOP,hashtable,BST,big O问题, 多线程,都是基本知识,没有什么tricky的地方。
有一道程序改错题,程序大概是替换一个字符串里面的pattern,不知道是谁写的,不是很
organized,估计是其他面试的同学的程序,我看了半天虽然觉的code写得很别扭,但也没找出什
么大错,面试官看我卡住了,就说我们继续吧。好在后来的题都答得比较顺利。
接下来又问了问现在做的项目,根据我的项目问了些问题,如server端如何实现session,项目中
有没有多线程,怎么实现。
最后还有5分钟结束的时候,给留了两道coding题,让我明早之前发给他。
一个就是binary search,不用多说了。
另外一个就是如何查找rotated sorted array (这也是很常见的题,因为面试官讲的是
cyclic,所以一开始我理解成{123456456},后来email问了才明白题意)... 阅读全帖 |
|
g**********y 发帖数: 14569 | 23 1. 你有一种语言的dictionary,你有一大串string,没有delimit,你如何interpret成字
典中的字呢?
http://www.mitbbs.com/article/JobHunting/31488093_3.html
这个刚讨论过,就是把一个句子分拆成单词,既可以用Trie, 也可以DP。去search
ihasleetcode的帖子。
2. 给你一个字典array of strings (you may preprocess it if necessary)
任意一个单词,求最小的edit distance
一个单位的distance定义为:
a. replace a letter
b. delete a letter
c. insert a letter (also at any position)
这个我不知道有什么高效的办法,我就brutal force: 反复调用minimumEditDistance(
String a, String b),求最小值。
求最小值的时候可以加点智能,比如已知现在最小值为k, 那么word.length() +/- k... 阅读全帖 |
|
m**q 发帖数: 189 | 24
1. 你有一种语言的dictionary,你有一大串string,没有delimit,你如何interpret成字
典中的字呢?
http://www.mitbbs.com/article/JobHunting/31488093_3.html
这个刚讨论过,就是把一个句子分拆成单词,既可以用Trie, 也可以DP。去search
ihasleetcode的帖子。
=> 收到,多谢啦
应该是trie + backtracking 或者 trie + DP吧
2. 给你一个字典array of strings (you may preprocess it if necessary)
任意一个单词,求最小的edit distance
一个单位的distance定义为:
a. replace a letter
b. delete a letter
c. insert a letter (also at any position)
这个我不知道有什么高效的办法,我就brutal force: 反复调用minimumEditDistance(
String a, String b),求最小值。
... 阅读全帖 |
|
g**********y 发帖数: 14569 | 25 1. 你有一种语言的dictionary,你有一大串string,没有delimit,你如何interpret成字
典中的字呢?
http://www.mitbbs.com/article/JobHunting/31488093_3.html
这个刚讨论过,就是把一个句子分拆成单词,既可以用Trie, 也可以DP。去search
ihasleetcode的帖子。
2. 给你一个字典array of strings (you may preprocess it if necessary)
任意一个单词,求最小的edit distance
一个单位的distance定义为:
a. replace a letter
b. delete a letter
c. insert a letter (also at any position)
这个我不知道有什么高效的办法,我就brutal force: 反复调用minimumEditDistance(
String a, String b),求最小值。
求最小值的时候可以加点智能,比如已知现在最小值为k, 那么word.length() +/- k... 阅读全帖 |
|
m**q 发帖数: 189 | 26
1. 你有一种语言的dictionary,你有一大串string,没有delimit,你如何interpret成字
典中的字呢?
http://www.mitbbs.com/article/JobHunting/31488093_3.html
这个刚讨论过,就是把一个句子分拆成单词,既可以用Trie, 也可以DP。去search
ihasleetcode的帖子。
=> 收到,多谢啦
应该是trie + backtracking 或者 trie + DP吧
2. 给你一个字典array of strings (you may preprocess it if necessary)
任意一个单词,求最小的edit distance
一个单位的distance定义为:
a. replace a letter
b. delete a letter
c. insert a letter (also at any position)
这个我不知道有什么高效的办法,我就brutal force: 反复调用minimumEditDistance(
String a, String b),求最小值。
... 阅读全帖 |
|
|
|
S**I 发帖数: 15689 | 29 ☆─────────────────────────────────────☆
gzou (gzou) 于 (Thu May 12 02:26:35 2011, 美东) 提到:
马上就要G on site了,
求祝福。
下面是从本版收集到的Google的试题,便于大家查询。
申明:有的附带有解释说明的,也来自于本版或者网络,大家自己看, 不保证真确
http://www.mitbbs.com/article_t1/JobHunting/31847453_0_1.html
本人ECE fresh PhD,背景是电路/EDA,跟G业务基本没什么关系
同学内部推荐的,很简单的一次电面就给了onsite
题都不难,但是自己没把握好机会,出了一些小bug。
总的感觉,出错就是硬伤,宁可从最简单的算法写起,也不能出错。
电面:
1,Skip list, http://en.wikipedia.org/wiki/Skip_list
写code实现struct skip_list * find(struct skip_list *head, int value)
2,sorted array... 阅读全帖 |
|
S**I 发帖数: 15689 | 30 ☆─────────────────────────────────────☆
gzou (gzou) 于 (Thu May 12 02:26:35 2011, 美东) 提到:
马上就要G on site了,
求祝福。
下面是从本版收集到的Google的试题,便于大家查询。
申明:有的附带有解释说明的,也来自于本版或者网络,大家自己看, 不保证真确
http://www.mitbbs.com/article_t1/JobHunting/31847453_0_1.html
本人ECE fresh PhD,背景是电路/EDA,跟G业务基本没什么关系
同学内部推荐的,很简单的一次电面就给了onsite
题都不难,但是自己没把握好机会,出了一些小bug。
总的感觉,出错就是硬伤,宁可从最简单的算法写起,也不能出错。
电面:
1,Skip list, http://en.wikipedia.org/wiki/Skip_list
写code实现struct skip_list * find(struct skip_list *head, int value)
2,sorted array... 阅读全帖 |
|
t******e 发帖数: 98 | 31 刘汝佳的《算法艺术与信息学竞赛》书上的例题,好像是在讲排序的那一章,这本书网
上有下载。面试考这题实在没意思,都是拿现成题目抄来抄去。 |
|
w******a 发帖数: 236 | 32 平心而论,非中国人出的题目真的不简单。我原先以为是版上大家遇到的新鲜题目,特
地花了一个星期的时间把所有G家题目和大家讨论的答案都过了一遍,面试前又请假三
天在家把所有能找到的题目都看了,结果栽在设计题上。
一道是我刚才回答ihasleetcode的帖子里提到的,一个老印要我设计一个语言翻译系统
,输入为一个非英语未知语言,输出为英语翻译,不许用dictionary,不许用NLP,你
说怎么办?
还有一个东欧来的小伙interviewer问我一道设计题,设计一个ATM系统,好像有一个奇
怪的限制条件,我记不清了。我说那就用consumer、producer好了,似乎他也不满意。
这个不是PIE里的例题吗?
其他几个面试官都是中国人,问的是基本问题,比如在young's tableau里找元素,还
有bst里找比某数大的element,都答得很好。 |
|
h****b 发帖数: 48 | 33 背景和经历:
国内名校混混,硕士混到之后又辗转混入微软中国,懵懂干了几年的测试,决心出国。
雷蒙德的卧佛拿了两个(办公室组和手机组),无奈国内极品老板不放人还给穿小鞋,
所以又去面了亚麻和狗狗,都是测试的位子,最后选了亚麻。
技术相关的面试总共经历了包括微软内的两个组各五轮,狗狗电话一轮国内三轮柯克兰
三轮,亚麻电话两轮西雅图四轮,小计二十三轮。因为签过恩地诶,所以题目要么不写
出处,要么细节做点变化,大家见谅。
关于准备:
简历里的闪光点要有针对性的挖掘。比如我用在微软内的简历里大吹特吹自己找八哥的
数据和一些特别经典的八哥;投给狗狗和亚麻的简历就强调自己写的自动化框架解决了
多大的问题。亚麻没找人内推,招聘官特意告诉我说我的简历和这个坑太匹配了。
对于要面试的组稍微做些功课也很重要。作为测试经理,对于一个用过自己产品,甚至
能提出一些主见的候选人自然是很喜欢的。在和办公室组聊的时候,我刚好之前把一些
私人表格从狗狗文档换到了微软的天盘,做了一些对比,老板听得很开心。。。
编程题的复习我是通读了150,编程珠玑和何海涛一百题,然后再浏览本版精华区,最
后几天去找点新题做做保持临场状态... 阅读全帖 |
|
K*****k 发帖数: 430 | 34 PIE书上的例题了,估计不太可能现实中再被考到。 |
|
d**e 发帖数: 6098 | 35 ☆─────────────────────────────────────☆
solary (+++) 于 (Wed Apr 4 00:49:01 2012, 美东) 提到:
发信人: solary (+++), 信区: Working
标 题: 需要多长时间准备google的面试?
发信站: BBS 未名空间站 (Wed Apr 4 00:04:59 2012, 美东)
CS工作背景,但已经差不多6年没碰过算法了,平常工作根本用不到,对算法数据结构
等也不太感兴趣。如果每天最多只能拿出两三个小时准备,多久才差不多可以去面试?
今天收到recruiter的电话,问两个星期内能不能做phone interview。刚刚看了一眼网
上的题目,觉得没什么信心,有点想放弃了。Google还是很想去的,虽然不知道会去做
什么,现在的经验也基本用不上,但工资高,吃饭也免费。不过我也不想第一轮phone
interview就fail。我能不能跟recruiter要求一年以后再联系我?那时候绿卡应该也批
了,而且从现在开始准备面试的话,到时候心里也还能有点底。
不过我自己一直就是太求... 阅读全帖 |
|
d****n 发帖数: 1637 | 36 作者自序写书历程:
“
我很快和Apress谈成了合作意向。另外两家出版社中,O'Reilly对面试这个选题不太感
兴趣,Wrox由于已经出过一本编程面试的书而不想再重复这个主题。
在版权问题上和Apress的编辑来来回回写了很多封Email。我在计划书里坦承
英文版的书和中文版的《剑指Offer》将有相似性,会采用中文版书中整体结构以及绝
大部分例题。这让版权意识很强的老外很紧张,担心这会侵犯出版《剑指Offer》的电
子工业出版的版权。直到我最后证明电子工业出版只有《剑指Offer》的中文(含简体
中文和繁体中文)版权而没有英文版权,他们才松了口气最终签订合同
...
”
http://blog.csdn.net/cadcisdhht/article/details/7965773 |
|
y****n 发帖数: 743 | 37 忙了两天,看到很多朋友的回复,谢谢大家的鼓励。
面试是一个与人打交道的过程,100个面试官就会有100个招聘原则。我不能保证每个面
试官都能认可我的面试表现,我也不能证明一种回答方式一定比另一种方式更好。我所
能做到仅仅是如下几点:
1. 比我的竞争对手多想一两步
2. 抓住每一次机会向对方展示一切对自己有利的东西
3. 从高一点的角度思考,明示暗示对方我的起点很高
4. 通过分析回答的信息量,来对比几种答案的好坏
我知道很多人不认同我的观点,认为我走的太远或者太偏。其实我在这篇文章里的举例
都是很保守的,只是用这里例子说明一些问题。我的面试经历不多(不是谦虚),但是
我在真实面试中玩得都比举例中玩得大。面试是因人而异的事情,只要你兜得住,玩多
大都不为过。
集中回复一下前面朋友们提到的问题。我只是阐述我的观点,你可以保留你的观点。
Kalisia提到over qualified。
在我看来over qualified几乎是个伪命题,我还没听说谁真正因为over qualified被拒
的。的确见到一些人找不到被拒的理由时,用over qualified来自我宽... 阅读全帖 |
|
J*****a 发帖数: 4262 | 38 这不是背包 不懂装懂 说入门说明你还没入门呢
背包问题复杂度是伪多项式,是NP的 这个题就是多项式复杂度
这是带权重的scheduling problem,康奈尔的算法教材上的例题原题 |
|
d****m 发帖数: 1008 | 39 我也没明白你的喷点在哪里。也没明白你是喷不是DP还是不是knapsack。
这题是algorithm design 第六章DP的第一个例题,你自己去看。我说是DP入门题不对
?题目我也没仔细看,好像比knapsack还简单些。
也是非常的逗:) |
|
J*****a 发帖数: 4262 | 40 这不是背包 不懂装懂 说入门说明你还没入门呢
背包问题复杂度是伪多项式,是NP的 这个题就是多项式复杂度
这是带权重的scheduling problem,康奈尔的算法教材上的例题原题 |
|
d****m 发帖数: 1008 | 41 我也没明白你的喷点在哪里。也没明白你是喷不是DP还是不是knapsack。
这题是algorithm design 第六章DP的第一个例题,你自己去看。我说是DP入门题不对
?题目我也没仔细看,好像比knapsack还简单些。
也是非常的逗:) |
|
q*c 发帖数: 9453 | 42 不排除极少数真牛比例提的人, 运气又好, 最后吧别人都变成沙比例题
比如老毛... |
|
p*****2 发帖数: 21240 | 43 elements of programming interviews |
|
j******2 发帖数: 362 | 44 heap常考就俩题
1. in stream找中值
2. in stream找top k(特别是频率最高的top k)
programming |
|
b****g 发帖数: 192 | 45 1. in stream找中值:就是维护两个size最多相差1的heap,一个min heap,一个max
heap
2. max value top k:size为k的min heap
请问这么做对吗?
频率最高的top k 怎么做?heap里存的东西是出现的次数吗?需要一个hashtable来把
value和heap里的node进行map吗? |
|
j****y 发帖数: 684 | 46 你这是从数据结构的角度说的?
leetcode里面基本没有图,没几何算法,没很多高级数据结构。。。
但这些面试都会碰到
programming |
|
h**6 发帖数: 4160 | 47 Louzhu can try to write Dijkstra algorithm |
|
s**********r 发帖数: 8153 | 48 除了150题有一章讲这个,还有什么地方能练习?有例子的。
作为菜鸟我一点都不会。。。需要题海战术+很多例题。 |
|
d**e 发帖数: 6098 | 49 ☆─────────────────────────────────────☆
yishan (易山风雨易江秋) 于 (Fri Feb 15 05:35:50 2013, 美东) 提到:
我撕去一小块窗纸,你能看到多远的天?
交流面试的时候,经常有朋友会问一个问题:我正确回答了90%的面试题,为什么被拒?
我们就来探讨这个问题。
先回答我一个问题:假设一次面试满分是100分,你正确回答90%题,该得多少分?
如果你认为该得90分,那说明你还没有理解面试,区分不开面试与考试的区别。考试是
看你是不是合格,面试是要选拔最优。用考试的思维应对面试,哥们儿你南辕北辙了。
现在回答我第二个问题,如果某个职位,有10个人都能正确回答90%题,凭什么要求对
方把offer给你?如果想不通这个问题,那你将来的面试成功率将永远是1/N(N表示竞
争同一个岗位时,与你水平相当的人数)。
你有没有想过,你的竞争对手中,发生如下情况:
- 有人能在满分100的面试中,得到150分,甚至200分
- 有人能把一道10分的题回答成50分
- 有人能用错误的回答,击败你正确的答案
- ... 阅读全帖 |
|
s******s 发帖数: 31 | 50 不要求严谨的话,也可以找一部初级stochastic processes的教材,
看一下martingale的章节和例题,可能更好懂。 |
|