google面试-笔试逻辑题及答案
google面试,笔试逻辑题及答案
谷歌笔试面试逻辑题目,部分答案在最后边。
1.一辆学校班车里面能装多少个高尔夫球?2.你被缩小到只有硬币厚度那么点高(不是压扁,是按比例缩小),然后被扔到一个空的玻璃搅拌器中,搅拌刀片一分钟后就开始转动。
你怎么办?3.要是让你清洗整个西雅图的所有窗子,你会收取多少费用?4.怎么才能识别出电脑的内存堆栈是向上溢出还是向下溢出?5.你要向你8岁的侄子解释什么是数据库,请用三句话完成。
6.时钟的指针一天内会重合几次?7.你需要从A地去B地,但你不知道能不能到,这时该怎么办?8.好比你有一个衣橱,里面塞满了各种衬衫,你会怎么整理这些衬衫,好让你以后找衬衫的时候容易些?9.有个小镇有100对夫妇,每个丈夫都在欺骗他的妻子。
妻子们都无法识破自己丈夫的谎言,但是她们却能知道其他任何一个男人是否在撒谎。
镇上的法律规定不准通奸,妻子一旦证明丈夫不忠就应该立刻杀死他,镇上所有妇女都必须严格遵守这项法律。
有一天,镇上的女王宣布,至少有一个丈夫是不忠的。
这是怎么发生的呢?10.在一个重男轻女的国家里,每个家庭都想生男孩,如果他们生的孩子是女孩,就再生一个,直到生下的是男孩为止。
这样的国家,男女比例会是多少?11.如果在高速公路上30分钟内到一辆车开过的几率是,那么在10分钟内看到一辆车开过的几率是多少(假设为常概率条件下)12.如果你看到钟的时间是3:15,那一刻时针和分针的夹角是多少?(肯定不是0度!)个人晚上要穿过一座索桥回到他们的营地。
可惜他们手上只有一支只能再坚持17分钟的手电筒。
通过索桥必须要拿着手电,而且索桥每次只能撑得起两个人的份量。
这四个人过索桥的速度都不一样,第一个走过索桥需要1分钟,第二个2分钟,第三个5分钟,最慢的那个要10分钟。
他们怎样才能在17分钟内全部走过索桥?14.你和朋友参加聚会,包括你们两人在内一共有10个人在场。
你朋友想跟你打赌,说这里每有一个人生日和你相同,你就给他1元,每有一个人生日和你不同,他给你2元。
Google笔试题整理
Google笔试题整理(超全!)附部分答案,希望能帮到有需要的人!写出这样一个函数,输入一个n, 输出从1到这个数字之间的出现的1的个数,比如f(13)等于6; f(9)等于1; 网上有很多这道题的解法,大多采用穷举法。
这把这个算法题变成了程序设计,这道题,我认为是总结一个递推公式,然后用递推法实现,比较好。
后来在网上考证了一下,这道题本来也是让总结一个数学函数即可,无需编程。
既然写了,就贴出来,发表一下自己的解法。
这道题还有另一半,当f(n)=n是,最小的n是多少?本人还没有好的方法,所以就不贴了。
下面的程序是上半部java实现的。
/* 可以推出下列递推公式:* f(n)=(a>1?s:n-s*a+1)+a*f(s-1)+f(n-s*a)当n>9时;* L是n的位数* a是n的第一位数字* s是10的L-1次方* n-s*a求的是a后面的数.* 公式说明:* 求0-n 由多少个数字1,分三部分,一是所有数中第一位有多少个1,对应(a>1?s:n-s*a+1) * 当a大于1是,应该有a的L1次,a小于1是有n-s*a+1。
* 如n是223 所有数中第一位有1是100;n是123所有数中第一位是1的有24* 二是对应a*f(s-1)如n是223应该有2*f(99)个1* 三是对应f(n-s*a) 如n是223应该有f(23)个1。
*/long f(long n){if (n<9) return n>0?1:0;int L=(int)(Math.log10(n)+1);//求n的位数llong s=(long)Math.pow(10, L-1);//求10的l-1次方,方便求后面n的第一位数字,及其后面的数。
long a=(long)(n/s);//求n的第一位数字return (a>1?s:n-s*a+1)+a*f(s-1)+f(n-s*a);}google笔试题:A+B=C在一个集合S中寻找最大的C使A+B=C且A,B,C均在集合当中解答(原创)1,将集合S中的数排序X1<=X2<=X3.............Xn;2,for(i=n;i>0;i--){for(j=0,k=i-1;k>j;){if(Xj+Xk>Xi){k--;cotinue;}if(Xj+Xk<Xi){j++;contiue;}A=Xj;B=Xk;C=Xi;break;}例子:1,4,7,10,11,13,15,18,3434:1-18,4-18........15-1818:1-15,4-15,4-13,7-13,7-11结果:A=7;B=11,C=18;第一个的题目(嗯,记的不是很完整):在一棵(排序?)二叉树中搜索指定值,数据结构定义为:struct Node{Node * lnext;Node * rnext;int value;};函数定义为():Node * search(Node * root, int value){}实现这个search函数。
谷歌笔试题
谷歌笔试题附答案以及思路谷歌笔试题:判断一个自然数是否是某个数的平方。
当然不能使用开方运算。
假设待判断的数字是N。
方法1:遍历从1到N的数字,求取平方并和N进行比较。
如果平方小于N,则继续遍历;如果等于N,则成功退出;如果大于N,则失败退出。
复杂度为O(n^0.5)。
方法2:使用二分查找法,对1到N之间的数字进行判断。
复杂度为O(log n)。
方法3:由于(n+1)^2=n^2 + 2n + 1,= …= 1 + (2*1 + 1) + (2*2 + 1) + … + (2*n + 1)注意到这些项构成了等差数列(每项之间相差2)。
所以我们可以比较N-1,N – 1 – 3,N – 1 – 3 –5 … 和0的关系。
如果大于0,则继续减;如果等于0,则成功退出;如果小于0,则失败退出。
复杂度为O(n^0.5)。
不过方法3中利用加减法替换掉了方法1中的乘法,所以速度会更快些。
谷歌笔试题:如何随机选取1000个关键字给定一个数据流,其中包含无穷尽的搜索关键字(比如,人们在谷歌搜索时不断输入的关键字)。
如何才能从这个无穷尽的流中随机的选取1000个关键字?定义长度为1000的数组。
对于数据流中的前1000个关键字,显然都要放到数组中。
对于数据流中的的第n(n>1000)个关键字,我们知道这个关键字被随机选中的概率为1000/n。
所以我们以1000/n 的概率用这个关键字去替换数组中的随机一个。
这样就可以保证所有关键字都以1000/n的概率被选中。
对于后面的关键字都进行这样的处理,这样我们就可以保证数组中总是保存着1000个随机关键字。
谷歌笔试题:将下列表达式按照复杂度排序将下列表达式按照复杂度排序2^nn^Googol (其中Googol = 10^100)n!n^n按照复杂度从低到高为n^Googol2^nn!n^n谷歌笔试题:在半径为1的圆中随机选取一点假设圆心所在位置为坐标元点(0, 0)。
15个Google面试题以及答案
1) 1) 村子 有村子 有100对 妻对 妻,,其中 个 都瞒着自 的妻子偷情其中 个 都瞒着自 的妻子偷情。
村 的 个妻子都能立即发 除自 之外的其他男人是否偷情 的 个妻子都能立即发 除自 之外的其他男人是否偷情,,唯独 知道 自 的 到 有没有偷情知道 自 的 到 有没有偷情。
村 的规矩 容忍通 村 的规矩 容忍通 。
任何一个妻子,一 能证明自 的男人偷情一 能证明自 的男人偷情,,就必须 把他杀死就必须 把他杀死。
村 的女人全都 格照 规矩办 格照 规矩办 。
一 一 ,,女头领出来 布女头领出来 布,,村 至少有一个 偷情村 至少有一个 偷情。
请问接 来会发生 么 请问接 来会发生 么 ??答案: 是一个典型的递 问题。
一 所有的妻子都知道至少有一个男人出轨, 们就可以按递 方式来看待 个流程。
先让 们假设只有一个 偷情。
他的妻子见 到任何偷情的男人,因 知道 个人就是自 , 就会杀了他。
假如有 个 偷情, 他俩的妻子只知道 是自 的那一个男人偷情。
因 会等 一 看那个人有没有被杀死。
假如第一 没人被杀死, 就能确定 自 的 也偷了情。
依 类推,假如有100个 偷情, 他们能安全活 99 ,直到100 时,所有妻子把他们全都杀死。
聘职位:产品 理日)日)假设在一段高假设在一段高假设在一段高 公路 公路 公路 ,,旦0分钟之内见到汽车 过的概率是0.950.95。
那么那么,,在10分钟内见到汽车 过的概率是多少分钟内见到汽车 过的概率是多少已(已(已(假设缺省概率固定假设缺省概率固定假设缺省概率固定))答案: 题的关键在于0.95是见到一辆或多辆汽车的概率,而 是仅见到一辆汽车的概率。
在旦0分钟内,见 到任何车辆的概率为0.05。
因 在10分钟内见 到任何车辆的概率是 个值的立方根,而在10分钟内见到一辆车的概率 为1 去 立方根,也就是大约6旦还。
聘职位:产品 理旦)旦)有四个人要在夜 穿过一条悬索桥回到宿营地有四个人要在夜 穿过一条悬索桥回到宿营地有四个人要在夜 穿过一条悬索桥回到宿营地。
15个谷歌面试题
问题:一辆校车能装下多少个高尔夫球?需要假设校车的容积,例如,依维科、沃尔沃、大奔……假设用公交车,车的容积(宽×高×长)=3×4×25=300立方米,一只高尔夫球半径约10厘米,因为装入后有空隙,按照立方体算,体积约0.008立方米,故该校车可容纳300/0.008=37500个高尔夫球。
应聘职位:产品经理问题:如果让你清洗西雅图市所有的窗户,你会对此索价多少?这题可能考验的是项目经理面对未知时的决策能力,理性的解法需根据城市面积,估算建筑表面展开面积,再估计室外窗户面积,室内窗户面积,并计算不同的层高成本的系数,总合出一个估值。
感性一点,可以迎合谷歌的风格,例如如果我能发明一种迅速清洗窗户个工具,那么我将提供一次几乎免费的清洗工作,这样当每扇窗户都离不开我时,我就可以开始鲸吞索价了。
应聘职位:产品经理问题:在一个重男轻女的国家里,每家每户都想生男孩。
若一户人家生了一个女孩,便会再生一个,直到生下的是男孩为止。
请问这个国家的男女比例是多少?答案是接近 1:152:48是正常出生的男女比例,因为很少有人会在生了女孩以后掐死,即使再重男轻女也要考虑后代的繁衍问题。
一胎生女的概率是0.5,连续两台生女的概率是0.25,连续三胎生女的概率是0.125,连续四胎及更多胎生女的概率更少。
极小概率事件可以忽略,不会影响总体。
应聘职位:产品经理问题:全世界共有多少位钢琴调音师?google上可以查到发达国家的人口数和钢琴普及率,那就可以计算了。
例如,需要知道美国的人口和总体经济状况,假如美国共有3亿人口,按三口之家计算,全美国共有1亿个家庭,如果一半家庭即5000万个家庭属于富裕阶层,拥有钢琴比例按10%这个比例可能有点偏高,但在推算大致比例时是允许的。
那么就有500万个家庭拥有钢琴,这样全美国就有500万架钢琴。
假设每架钢琴一年调音一次,一个调音师一年调音1000架次的话,那么全美国调音师的数量就是5000000/1000=5000。
15道变态google面试问题的参考答案
15道变态google面试问题的参考答案发布人:2012-10-17 13:48------参考答案,是网上某位网友的回答,仅供参考----------问题:一辆校车能装下多少个高尔夫球鉴于这个问题是问产品经理的,不太可能考验它的“诚实度”和“处世态度”,所以面试官不会想得到“不知道”的答案。
由于是产品经理而不是营销经理,也不会考验人脑筋急转弯的能力,不会想得到“校车的载重量有多少就能装下多少高尔夫球”。
我觉得可能是考验应聘者的现场估算能力,测试他对数字第一反应有多敏感,因为做项目策划时一样是在几乎完全未知的情况下估算的,那么答案应该是这样的:假设校车容积=3×4×25=300立方米,一只高尔夫球半径约10厘米,因为装入后有空隙,按照立方体算,体积约立方米,故该校车可容纳300/=37500个高尔夫球。
问题:如果让你清洗西雅图市所有的窗户,你会对此索价多少这题可能考验的是项目经理面对未知时的决策能力,鉴于谷歌的果敢,答案很可能不是:我不去做,因为收入支出不成正比,我一辈子也没有机会清洗所有窗户。
答案可能是谷歌的风格,如果我能发明一种迅速清洗窗户个工具,那么我将提供一次几乎免费的清洗工作,这样当每扇窗户都离不开我时,我就可以开始鲸吞索价了。
问题:在一个重男轻女的国家里,每家每户都想生男孩。
若一户人家生了一个女孩,便会再生一个,直到生下的是男孩为止。
请问这个国家的男女比例是多少悲剧,这是指的某国么,据说52:48,春哥纯爷们算男算女,玩劲舞团的要不要砍掉答案是,男女比例仍是1:1,因为很少有人会在生了女孩以后掐死,即使再重男轻女也要考虑后代的繁衍问题。
把掐死与丢弃自己女儿的事件看作极小概率,将其忽略,不会影响总体。
问题:全世界共有多少位钢琴调音师这题需要知道美国的人口和总体经济状况,才能估算。
美国共有3亿人口,按三口之家计算,全美国共有1亿个家庭,如果一半家庭即5000万个家庭属于富裕阶层,拥有钢琴比例按10%这个比例可能有点偏高,但在推算大致比例时是允许的。
Google面试题
1.简单来说,成功100分的话,得分组成比例可以如下:1、50分的算法和C语言,2、15分的项目分,3、15分的知识面和扯淡分,4、10分的开发语言细节分,5、5分的其他。
2.个人经验,这类题集中一下几个方面:排序,知道各种排序的时间和复杂度,能写出快排,堆排以及计数排序的代码且知道什么时候用哪种即可。
链表:知道构建动态链表,删除节点,翻转链表,两两翻转,求环节点,求两链表交点足够。
字符串:知道高效翻转,回文足够,如果还能完整的写出KMP查找就基本完美。
树:知道二叉树的三种递归遍历,非递归遍历,查找,知道两种遍历求第三种,再深一点,知道如何分层遍历,如何求两节点距离,就通吃了。
其它:队列、栈、哈希表的特性,动态规划。
只要上边的只是准备的差不多,算法的笔试和面试题问题就不大了。
本人的本科和研究生都是机械,没学过这些东西,从9月17的第一场微软笔试开始,边考边学,就靠这点东西闯笔试和过面试。
3.本人被问过:PageRank,搜索引擎倒正排索引,数据库优化,web性能优化,浏览器渲染,web安全,爬虫,设计模式,软件架构,推荐系统,加密算法,服务器推等等。
1. 一辆学校班车里面能装多少个高尔夫球?答:应该也是用常理推断过程2. 你被缩小到只有硬币厚度那么点高(不是压扁,是按比例缩小),然后被扔到一个空的玻璃搅拌器中,搅拌刀片一分钟后就开始转动。
你怎么办?答:搅拌器应该是有空隙的,所以躲到边上应该不会被打到。
但是玻璃搅拌器四周可能无法抓住附着,所以旋转带来的风可能把你吹起来。
所以尽量走到搅拌器转轴中间,试图爬上去或者抓住。
3. 要是让你清洗整个西雅图的所有窗子,你会收取多少费用?答:类似调音师的推理过程4. 怎么才能识别出电脑的内存堆栈是向上溢出还是向下溢出?答:只能向上溢出5. 你要向你8岁的侄子解释什么是数据库,请用三句话完成。
答1:数据库就如存钱罐…答2:就是你的书包,里面有你喜欢的:圣斗士金卡,小玩具;也有你不喜欢的:考卷啊,要家长签名的东西啊。
谷歌面试中,15个让人疯狂的经典问题
谷歌面试中,15个让人疯狂的经典问题第1篇:谷歌面试中15个让人疯狂的经典问题对一些身处经济衰退大潮中的初级经理和软件开发者而言,谷歌是一个避风港。
但其招聘门槛较高,首先,谷歌更青睐长春藤联盟(由美国八所知名大学所组成)的毕业生;其次,即使应聘者已年过30,谷歌也很在意其gpa(平均成绩点数)分数;第三,谷歌需要的是那些想改变世界的人。
而且,即使应聘者满足了上述要求,也有可能在面试中被谷歌提出的问题所难倒。
以下是15个让许多应聘者抓狂的谷歌面试题。
问题1:一辆校车能装下多少个高尔夫球?应聘职位:产品经理问题2:如果让你清洗西雅图市所有的窗户,你会对此索价多少?应聘职位:产品经理问题3:在一个重男轻女的国家里,每家每户都想生男孩。
若一户人家生了一个女孩,便会再生一个,直到生下的是男孩为止。
请问这个国家的男女比例是多少?应聘职位:产品经理问题4:全世界共有多少位钢琴调音师?应聘职位:产品经理问题5:下水道井盖为什么是圆的?应聘职位:软件工程师问题6:为旧金山市设计一个紧急疏散方案。
应聘职位:产品经理问题7:时钟的指针一天内总共会重合多少次?应聘职位:产品经理问题8:阐释"死牛肉"的意义所在。
应聘职位:软件工程师问题9:一个人开车来到旅馆,变得一无所有。
究竟发生了什么事情?应聘职位:软件工程师问题10:你想知道好友鲍勃是否有你正确的电话号码,但又不能直接问他。
你必未完,继续阅读 >第2篇:谷歌面试中,15个让人疯狂的经典问题对一些身处经济衰退大潮中的初级经理和软件开发者而言,谷歌是一个避风港。
但其招聘门槛较高,首先,谷歌更青睐长春藤联盟(由美国八所知名大学所组成)的毕业生;其次,即使应聘者已年过30,谷歌也很在意其gpa(平均成绩点数)分数;第三,谷歌需要的是那些想改变世界的人。
而且,即使应聘者满足了上述要求,也有可能在面试中被谷歌提出的问题所难倒。
以下是15个让许多应聘者抓狂的谷歌面试题。
Google笔试题
Google面试题1.下面哪项不是链表优于数组的特点?A.方便删除B.方便插入C.长度可变D.存储空间小2.T(n)=25T(n/5)+n*n的时间复杂度?3.有一幢100层高的大楼,给你两个完全相同的玻璃围棋子。
假设从某一层开始,丢下玻璃棋子就会破碎。
那么怎么利用手中的两颗棋子,用一种什么样的最优策略,知道这个临界的层高呢?___________________________________________________ _________________[07.5.21]Google实习生招聘笔试题目发信站: 华南木棉BBS (T ue May 22 09:40:40 2007), 转信一、选择题1、定义{1, 2, ... n}*{1, 2, ... n}上的等价关系~(a, b)~(c, d)当且仅当a+b=c+d。
定义集合A(a, b) = {(x,y)|(x,y)~(a,b)},那么{1, 2, ... n}*{1, 2, ... n}上不同集合的数量为( )A、nB、2*n-1C、2*nD、n*n2、下面一段代码的输出是( )int a, b;int *x, *y;x = &a;y = &b;*x = 10;*y = *x;x = y;*x = 20;cout<<a<<' '<<b<<endl;A、10 20B、20 10C、10 10D、20 203、下面一段代码的输出结果是( )void f(char* c, char d){*c = *c +1;d = d+1;cout<<c<<d;}void main(){char a = 'A', b = 'a';f(&b, a);cout<<a<<b<<endl;}A、BaBaB、aBaBC、AbAbD、bBAb4、若二叉搜索树有三个节点,对应于三个不同的值A、B、C,这样的二叉搜索树共有多少种可能的构造?( )A、1B、2C、3D、4E、55、假设把整数关键码K散列到有N个槽的散列表,以下哪些散列函数是好的散列函数?( )1) h(k) = k / N;2) h(k) = 1;3) h(k) = k mod N;4) h(k) = (k + Random(N)) mod N, Random(N)返回一个0到N-1的整数A、1)B、2)C、3)D、4)E、3)和4)6、有如下递归函数f(n),其时间复杂度为( )int f(int n){int sum = 0;for(int i=0; i<n; i++)sum = sum + i;return f(n/2) + f((n+1)/2) + sum;}A、O(n)B、O(nlongn)C、O(n^2)D、O(n^(3/2))7、进程从拥塞状态变为就绪状态是发生在( )A、分配给进程的时间片用完B、进程等待的事件发生C、进程被调度程序选中D、进程等待某一事件8、如果有多个中断同时发生,系统将根据中断优先级响应优先级最高的中断请求。
Google面试笔试题目.doc
Google面试笔试题目Google面试题今年10月底,Google在美国《麻省技术评论》、〈〈LinuxJournal〉〉、〈〈Mensa》、《今日物理》等几本专业杂志上刊登了一份“Google 实验室能力倾向测试”的试卷,开头蛊惑地写着“试试看!把答案寄回Google, 你有希望去Google总部参观,并成为我们其中一员”。
有兴趣的人可以做完了邮寄给Google公司,也许会得到一个工作机会呢。
1、解答下面的隐藏等式,其中的M和E的值可以互换,但不允许第一位是0 :WWWDO T-GOO GLE=D 0TC0M2、用一个俳句(一种日本短诗,每句有一个与季节有关的词)来建立模型,借此预测网络搜索流量的季节性变化;3、11211 111 221下一行是什么?4、你正处于一个全部由崎岖小路构成的迷宫里,手里有一个满是灰尘的笔记本,可以无线上网,但是信号很弱。
与此同时,一些阴森可怕、毫无生气的妖怪在你身边游荡。
你会怎么做呢?(1)毫无目的的四处游荡,到处碰壁,直到被迷宫里的妖怪吃掉。
(2 )用笔记本作为挖掘工具,打穿地面直接进入下一关。
(3)玩网络游戏《魔法骑兵》,直至电池耗尽,你也心灰意冷。
(4)使用笔记本画出迷宫的节点地图,找到出路。
(5)发送简历给Google,告诉主管妖怪你选择退出,随后你就回到现实世界。
5、Unix有何缺陷?你准备如何补救?6、在Googl e工作的第一天,你发现身边的同事竟然是研究生一年级课本的作者,你会:(1)主动示好并索取签名。
(2)不改变坐姿,但放轻打字声音,避免影响她的工作和思考。
(3)把你每天的麦片和咖啡都留给她享用。
(4)在她所写的书中找到你最喜欢的内容,并告诉她这些内容已经成为你的座右铭。
7、下列哪句话最贴切的表达了 Goog le的企业文化?(1)我感到很幸运。
(2)不要干坏事。
(3)哦,我己经解决了那个问题。
(4)你身边50英寸之内,必定能找到食物。
(5)以上皆是。
Google笔试题整理(超全!)附部分答案
Google笔试题整理(超全!)附部分答案写出这样一个函数,输入一个n, 输出从1到这个数字之间的出现的1的个数,比如f(13)等于6; f(9)等于1; 网上有很多这道题的解法,大多采用穷举法。
这把这个算法题变成了程序设计,这道题,我认为是总结一个递推公式,然后用递推法实现,比较好。
后来在网上考证了一下,这道题本来也是让总结一个数学函数即可,无需编程。
既然写了,就贴出来,发表一下自己的解法。
这道题还有另一半,当f(n)=n是,最小的n是多少?本人还没有好的方法,所以就不贴了。
下面的程序是上半部java实现的。
/* 可以推出下列递推公式:* f(n)=(a>1?s:n-s*a+1)+a*f(s-1)+f(n-s*a)当n>9时;* L是n的位数* a是n的第一位数字* s是10的L-1次方* n-s*a求的是a后面的数.* 公式说明:* 求0-n 由多少个数字1,分三部分,一是所有数中第一位有多少个1,对应(a>1?s:n-s*a+1)* 当a大于1是,应该有a的L1次,a小于1是有n-s*a+1。
* 如n是223 所有数中第一位有1是100;n是123所有数中第一位是1的有24* 二是对应a*f(s-1)如n是223应该有2*f(99)个1* 三是对应f(n-s*a) 如n是223应该有f(23)个1。
*/long f(long n){if (n<9) return n>0?1:0;int L=(int)(Math.log10(n)+1);//求n的位数llong s=(long)Math.pow(10, L-1);//求10的l-1次方,方便求后面n的第一位数字,及其后面的数。
long a=(long)(n/s);//求n的第一位数字return (a>1?s:n-s*a+1)+a*f(s-1)+f(n-s*a);}google笔试题:A+B=C在一个集合S中寻找最大的C使A+B=C且A,B,C均在集合当中解答(原创)1,将集合S中的数排序X1<=X2<=X3.............Xn;2,for(i=n;i>0;i--){for(j=0,k=i-1;k>j;){if(Xj+Xk>Xi){k--;cotinue;}if(Xj+Xk<Xi){j++;contiue;}A=Xj;B=Xk;C=Xi;break;}例子:1,4,7,10,11,13,15,18,3434:1-18,4-18........15-1818:1-15,4-15,4-13,7-13,7-11结果:A=7;B=11,C=18;第一个的题目(嗯,记的不是很完整):在一棵(排序?)二叉树中搜索指定值,数据结构定义为:struct Node{Node * lnext;Node * rnext;int value;};函数定义为():Node * search(Node * root, int value){}实现这个search函数。
google面试,笔试逻辑题及问题详解
谷歌笔试面试逻辑题目,部分答案在最后边。
1.一辆学校班车里面能装多少个高尔夫球?2.你被缩小到只有硬币厚度那么点高(不是压扁,是按比例缩小),然后被扔到一个空的玻璃搅拌器中,搅拌刀片一分钟后就开始转动。
你怎么办?3.要是让你清洗整个西雅图的所有窗子,你会收取多少费用?4.怎么才能识别出电脑的内存堆栈是向上溢出还是向下溢出?5.你要向你8岁的侄子解释什么是数据库,请用三句话完成。
6.时钟的指针一天内会重合几次?7.你需要从A地去B地,但你不知道能不能到,这时该怎么办?8.好比你有一个衣橱,里面塞满了各种衬衫,你会怎么整理这些衬衫,好让你以后找衬衫的时候容易些?9.有个小镇有100对夫妇,每个丈夫都在欺骗他的妻子。
妻子们都无法识破自己丈夫的谎言,但是她们却能知道其他任何一个男人是否在撒谎。
镇上的法律规定不准通奸,妻子一旦证明丈夫不忠就应该立刻杀死他,镇上所有妇女都必须严格遵守这项法律。
有一天,镇上的女王宣布,至少有一个丈夫是不忠的。
这是怎么发生的呢?10.在一个重男轻女的国家里,每个家庭都想生男孩,如果他们生的孩子是女孩,就再生一个,直到生下的是男孩为止。
这样的国家,男女比例会是多少?11.如果在高速公路上30分钟内到一辆车开过的几率是0.95,那么在10分钟内看到一辆车开过的几率是多少(假设为常概率条件下)12.如果你看到钟的时间是3:15,那一刻时针和分针的夹角是多少?(肯定不是0度!)13.4个人晚上要穿过一座索桥回到他们的营地。
可惜他们手上只有一支只能再坚持17分钟的手电筒。
通过索桥必须要拿着手电,而且索桥每次只能撑得起两个人的份量。
这四个人过索桥的速度都不一样,第一个走过索桥需要1分钟,第二个2分钟,第三个5分钟,最慢的那个要10分钟。
他们怎样才能在17分钟内全部走过索桥?14.你和朋友参加聚会,包括你们两人在内一共有10个人在场。
你朋友想跟你打赌,说这里每有一个人生日和你相同,你就给他1元,每有一个人生日和你不同,他给你2元。
Google笔试(附笔试题)
Google笔试(附笔试题)Google笔试(附笔试题)1、两个二进制数的异或结果2、递归函数最终会结束,那么这个函数一定(不定项选择):1. 使用了局部变量2. 有一个分支不调用自身3. 使用了全局变量或者使用了一个或多个参数3、以下函数的结果?int cal(int x){if(x==0)return 0;elsereturn x cal(x-1);}4、以下程序的结果?void foo(int*a, int* b){*a = *a *b;*b = *a-*b;*a = *a-*b;}void main(){int a=1, b=2, c=3;foo(a,b);foo(b,c);foo(c,a);printf(%d, %d, %d, a,b,c);}5、下面哪项不是链表优于数组的特点?1. 方便删除2. 方便插入3. 长度可变4. 存储空间小6、T(n) = 25T(n/5) n^2的时间复杂度?7、n个顶点,m条边的全连通图,至少去掉几条边才能构成一棵树?8、正则表达式(01|10|1001|0110)*与下列哪个表达式一样?1.(0|1)*2.(01|01)*3.(01|10)*4.(11|01)*5.(01|1)*9、如何减少换页错误?1. 进程倾向于占用CPU2. 访问局部性(locality of reference)满足进程要求3. 进程倾向于占用I/O4.使用基于最短剩余时间(shortest remaining time)的调度机制5. 减少页大小10、实现两个N*N矩阵的.乘法,矩阵由一维数组表示11、找到单向链表中间那个元素,如果有两个则取前面一个12、长度为n的整数数组,找出其中任意(n-1)个乘积最大的那一组,只能用乘法,不可以用除法,,资料共享平台《Google笔试(附笔试题)》(https://www.)。
要求对算法的时间复杂度和空间复杂度作出分析,不要求写程序。
谷歌中国面试题
谷歌中国面试题谷歌中国面试题谷歌中国面试题:1、给出一行C语言表达式,判断给定的整数是否是一个2的幂。
2、一个大小为N的数组,所有数都是不超过N-1的正整数。
用O(N)的时间找出重复的那个数(假设只有一个)。
一个大小为N的数组,所有数都是不超过N+1的正整数。
用O(N)的时间找出没有出现过的那个数(假设只有一个)。
3、如何快速找出一个32位整数的二进制表达里有多少个"1"?用关于"1"的`个数的线性时间?4、你在一幢100层大楼下,有21根电线线头标有数字1..21。
这些电线一直延伸到大楼楼顶,楼顶的线头处标有字母A..U。
你不知道下面的数字和上面的字母的对应关系。
你有一个电池,一个灯泡,和许多很短的电线。
如何只上下楼一次就能确定电线线头的对应关系?5、用线性时间和常数附加空间将一个长度为n的字符串向左循环移动m位(例如,"abcdefg"移动3位就变成了"defgabc")。
6、两个机器人,初始时位于数轴上的不同位置。
给这两个机器人输入一段相同的程序,使得这两个机器人保证可以相遇。
程序只能包含“左移n个单位”、“右移n个单位”,条件判断语句If,循环语句while,以及两个返回Boolean值的函数“在自己的起点处”和“在对方的起点处”。
你不能使用其它的变量和计数器。
7、你在一个飞船上,飞船上的计算机有n个处理器。
突然,飞船受到外星激光武器的攻击,一些处理器被损坏了。
你知道有超过一半的处理器仍然是好的。
你可以向一个处理器询问另一个处理器是好的还是坏的。
一个好的处理器总是说真话,一个坏的处理器总是说假话。
用n-2次询问找出一个好的处理器。
8、用线性时间和常数附加空间将一篇文章的单词(不是字符)倒序。
google招聘笔试题完整版
Google招聘笔试题完整版一、选择题(1) 以下哪个字符串不能被正则表达式a(bc)*d* 匹配到?A. adB. abcdC. abcD. abccd(2) 在x86 cpu中,下面哪种运算速度最慢?A. 加B. 减C. 乘D. 除(3) 下面程序输出的结果是什么?void main(){bool first=true;int sum =0;int current_value;for(unsigned short i=65535;i>=0;--i ){if(first){current_value=65535;sum+=current_value%3;first=false;}else{sum+=-current_value%3;if(current_value<=0){printf("%d,%d",sum,i);break;}}}} A. 65535, 0 B. 65536, 1 C. 65536, 65535 D. 65536, 0(4) 书架上有编号为1-19的19本书,从中拿5本,问5本编号都不相邻的拿法有多少种?A. 2002B. 3003C. 11628D. 比C大的一个数,具体多少我忘记了。
(5) 现在有一套房子,价格200万,假设房价每年上涨10%,一个软件工程师每年固定能赚40万。
如果他想买这套房子,不贷款,不涨工资,没有其他收入,那么他需要几年才能攒够钱买这套房子?A. 5年B. 7年C. 8年D. 9年E. 永远买不起(6) 一棵满二叉树,一共有n个叶子节点,请问该二叉树一共有多少个节点?A. 2n-1B. 2nC. n-1D. n(7) 下列哪种排序方法在最坏情况下的时间复杂度是nlgn?A. 归并排序B. 快速排序C. 冒泡排序D. 插入排序(8) 有两个从小到大排好序的数组,长度分别是N和M,将这两个数组合并成一个有序数组的最小比较次数是:?A min(N,M)B M+N-1C N+MD max(M,N)(9) 关于TLB和Cache的说法中,哪个是错的?A. TLB与Cache中保存的数据是不同的B. TLB miss后,有可能直接在Cache中找到页表内容C. TLB miss后会导致程序出错,但是Cache miss不会D TLB和Cache的命中率都与程序的访存模式有关(10) 关于数据库的说法,哪个是错误的?A. 每个表都必须有主键B. 跨表查询可能非常慢C. 数据库不支持多个用户对同一个表进行写操作D. 多维索引可以用KD树实现二、编程算法题(1) 编程实现多项式求值:f(n)=a0+ a1*x^1 + a2*x^2 +…+ an*x^n,函数声明如下:double foo(double x, double *A, int N)。
15个Google面试题以及答案(2)
15个Google面试题以及答案(2)
应聘职位:软件工程师
14)Google每年收到多少份软件工程师的?这也是在考察应试者是否有能力把问题简单明确化,并提出创造性的解决方案。
答案:一个量化报酬分析师职位的求职者,应该知道2008年Google雇佣了3400人。
估计其中75%,即2550人,应该是工程师,并且Google和哈佛的录取率类似,即从申请人中取3%。
由此可知应该收到大约85000简历(85000 x 3% = 2550)
应聘职位:量化报酬分析师
15)给你一个数字链表。
链表到头之后又会从头开始(循环链表)。
请写出寻找链表中最小数字的最高效算法。
找出此链表中的任意给定数字。
链表中的数字总是不断增大的,但是你不知道循环链表从何处开始。
例:38, 40, 55, 89, 6, 13, 20, 23, 36.
答案:我们最喜欢的答案来自读者dude :建立临时指针并从根上开始。
(循环链表大多数情况下都有向前或向后指针。
)判断是向前更大还是向后更大。
如果向前更大则知道已达到链表最后,又重新位于链表开始位置。
如果向前更大,那你可以向后搜寻并进行数字比较。
如果既没有根也没有指针指向链表,那么你的数据就丢失在内存中了。
goog_e面试题目(3篇)
第1篇背景:随着互联网的快速发展,在线广告已成为企业营销的重要手段。
然而,如何在海量用户数据中快速、准确地推荐合适的广告给用户,成为了一个极具挑战性的问题。
本题目要求设计一个高效的在线广告推荐系统,该系统需满足以下要求:1. 系统应能够处理大规模的用户数据,实时更新用户行为信息。
2. 系统应具备较强的推荐准确性,提高广告点击率和转化率。
3. 系统应具有良好的可扩展性,能够适应不断增长的用户规模和数据量。
4. 系统应具有较低的延迟,满足实时推荐的需求。
一、系统架构1. 数据采集层:负责收集用户在网站、APP等平台的浏览、搜索、购买等行为数据。
2. 数据处理层:对采集到的数据进行清洗、转换、特征提取等操作,为推荐引擎提供高质量的数据。
3. 推荐引擎层:根据用户行为数据,结合广告特征,进行广告推荐。
4. 展示层:将推荐结果展示给用户,包括广告投放、搜索结果等。
二、关键技术1. 数据采集与处理(1)数据采集:采用分布式采集框架,实现海量数据的实时采集。
(2)数据处理:采用流处理技术,对实时数据进行实时处理,提取用户行为特征。
2. 特征工程(1)用户特征:包括用户的基本信息、浏览历史、购买记录等。
(2)广告特征:包括广告类型、广告内容、广告主信息等。
(3)特征融合:将用户特征和广告特征进行融合,提高推荐准确性。
3. 推荐算法(1)协同过滤:根据用户的历史行为,寻找相似用户,推荐相似广告。
(2)基于内容的推荐:根据广告内容和用户兴趣,推荐相关广告。
(3)深度学习:利用深度学习模型,挖掘用户行为数据中的潜在特征,提高推荐效果。
4. 实时推荐(1)采用分布式计算框架,实现实时推荐。
(2)优化推荐算法,降低延迟。
三、系统实现1. 数据采集与处理(1)采用Flume、Kafka等工具,实现海量数据的实时采集。
(2)采用Spark Streaming等流处理技术,对实时数据进行处理。
2. 特征工程(1)采用Hadoop、Spark等分布式计算框架,进行特征提取和融合。
15个Google面试题以及答案
15个Google面试题以及答案D答案:这题的关键在于0.95是见到一辆或多辆汽车的概率,而不是仅见到一辆汽车的概率。
在30分钟内,见不到任何车辆的概率为0.05。
因此在10分钟内见不到任何车辆的概率是这个值的立方根,而在10分钟内见到一辆车的概率则为1减去此立方根,也就是大约63%。
应聘职位:产品经理3)有四个人要在夜里穿过一条悬索桥回到宿营地。
可是他们只有一支手电,电池只够再亮17分钟。
过桥必须要有手电,否则太危险。
桥最多只能承受两个人同时通过的重量。
这四个人的过桥速度都不一样:一个需要1分钟,一个需要2分钟,一个需要5分钟,还有一个需要10分钟。
他们如何才能在17分钟之内全部过桥?答案:1和2一起过(2分钟);1返回(3分钟);5和10一起过(13分钟);2返回(15分钟);1和2一起过(17分钟)。
全体安全过桥。
应聘职位:产品经理4) 你和一个朋友去参加聚会。
聚会算上你们一共10人。
你的朋友想要跟你打个赌:你在这些人每找到一个和你生日相同的,你就赢1块钱。
他在这些人里每找到一个和你生日不同的人,他就赢2块钱。
你该不该打这个赌?答案:不算闰年的话,别人跟你生日相同的概率是1/365;跟你生日不同的概率是364/365。
因此不要打这个赌。
应聘职位:产品经理5)如果你看到时钟上面的时间是3:15,那么其时针和分针之间的角度是多少?(答案不是零)答案:7.5度。
时钟上每一分钟是6度(360度/60分钟)。
时针每小时从一个数字走到下一个数字(此例中为从3点到4点),也就是30度。
因为此题中时间刚好走过1/4小时,因此时针走完30度的1/4,也就是7.5度。
应聘职位:产品经理6)将一根木条折成3段之后,可以形成一个三角形的概率有多大?答案:因为题目中没有说要求木条必须首尾相连的做成三角形,因此答案是100%。
任何长度的三根木条都可以形成一个三角形。
应聘职位:产品经理7)南非有个延时问题。
请对其加以分析。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
谷歌笔试面试逻辑题目,部分答案在最后边。
1.一辆学校班车里面能装多少个高尔夫球?2.你被缩小到只有硬币厚度那么点高(不是压扁,是按比例缩小),然后被扔到一个空的玻璃搅拌器中,搅拌刀片一分钟后就开始转动。
你怎么办?3.要是让你清洗整个西雅图的所有窗子,你会收取多少费用?4.怎么才能识别出电脑的内存堆栈是向上溢出还是向下溢出?5.你要向你8岁的侄子解释什么是数据库,请用三句话完成。
6.时钟的指针一天内会重合几次?7.你需要从A地去B地,但你不知道能不能到,这时该怎么办?8.好比你有一个衣橱,里面塞满了各种衬衫,你会怎么整理这些衬衫,好让你以后找衬衫的时候容易些?9.有个小镇有100对夫妇,每个丈夫都在欺骗他的妻子。
妻子们都无法识破自己丈夫的谎言,但是她们却能知道其他任何一个男人是否在撒谎。
镇上的法律规定不准通奸,妻子一旦证明丈夫不忠就应该立刻杀死他,镇上所有妇女都必须严格遵守这项法律。
有一天,镇上的女王宣布,至少有一个丈夫是不忠的。
这是怎么发生的呢?10.在一个重男轻女的国家里,每个家庭都想生男孩,如果他们生的孩子是女孩,就再生一个,直到生下的是男孩为止。
这样的国家,男女比例会是多少?11.如果在高速公路上30分钟内到一辆车开过的几率是0.95,那么在10分钟内看到一辆车开过的几率是多少(假设为常概率条件下)12.如果你看到钟的时间是3:15,那一刻时针和分针的夹角是多少?(肯定不是0度!)13.4个人晚上要穿过一座索桥回到他们的营地。
可惜他们手上只有一支只能再坚持17分钟的手电筒。
通过索桥必须要拿着手电,而且索桥每次只能撑得起两个人的份量。
这四个人过索桥的速度都不一样,第一个走过索桥需要1分钟,第二个2分钟,第三个5分钟,最慢的那个要10分钟。
他们怎样才能在17分钟内全部走过索桥?14.你和朋友参加聚会,包括你们两人在内一共有10个人在场。
你朋友想跟你打赌,说这里每有一个人生日和你相同,你就给他1元,每有一个人生日和你不同,他给你2元。
你会接受么?15.全世界有多少个钢琴调音师?16.你有8个一样大小的球,其中7个的重量是一样的,另一个比较重。
怎样能够用天平仅称两次将那个重一些的球找出来。
17.有5个海盗,按照等级从5到1排列。
最大的海盗有权提议他们如何分享100枚金币。
但其他人要对此表决,如果多数反对,那他就会被杀死。
他应该提出怎样的方案,既让自己拿到尽可能多的金币又不会被杀死?(提示:有一个海盗能拿到98%的金币)A.逻辑推理1、你让工人为你工作7天,给工人的回报是一根金条。
金条平分成相连的7段,你必须在每天结束时给他们一段金条,如果只许你两次把金条弄断,你如何给你的工人付费?2、请把一盒蛋糕切成8份,分给8个人,但蛋糕盒里还必须留有一份。
3、小明一家过一座桥,过桥时是黑夜,所以必须有灯。
现在小明过桥要1秒,小明的弟弟要3秒,小明的爸爸要6秒,小明的妈妈要8秒,小明的爷爷要12秒。
每次此桥最多可过两人,而过桥的速度依过桥最慢者而定,而且灯在点燃后30秒就会熄灭。
问:小明一家如何过桥?4、一群人开舞会,每人头上都戴着一顶帽子。
帽子只有黑白两种,黑的至少有一顶。
每个人都能看到其他人帽子的颜色,却看不到自己的。
主持人先让大家看看别人头上戴的是什么帽子,然后关灯,如果有人认为自己戴的是黑帽子,就打自己一个耳光。
第一次关灯,没有声音。
于是再开灯,大家再看一遍,关灯时仍然鸦雀无声。
一直到第三次关灯,才有劈劈啪啪打耳光的声音响起。
问有多少人戴着黑帽子?5、请估算一下CNTOWER电视塔的质量。
6、一楼到十楼的每层电梯门口都放着一颗钻石,钻石大小不一。
你乘坐电梯从一楼到十楼,每层楼电梯门都会打开一次,只能拿一次钻石,问怎样才能拿到最大的一颗?7、U2合唱团在17分钟内得赶到演唱会场,途中必需跨过一座桥,四个人从桥的同一端出发,你得帮助他们到达另一端,天色很暗,而他们只有一只手电筒。
一次同时最多可以有两人一起过桥,而过桥的时候必须持有手电筒,所以就得有人把手电筒带来带去,来回桥两端。
手电筒是不能用丢的方式来传递的。
四个人的步行速度各不同,若两人同行则以较慢者的速度为准。
Bono需花1分钟过桥,Edge需花2分钟过桥,Adam需花5分钟过桥,Larry需花10分钟过桥。
他们要如何在17分钟内过桥呢?8、烧一根不均匀的绳要用一个小时,如何用它来判断半个小时 ?9、为什么下水道的盖子是圆的?10、美国有多少辆加油站(汽车)?11、有7克、2克砝码各一个,天平一只,如何只用这些物品三次将140克的盐分成50、90克各一份?12、有一辆火车以每小时15公里的速度离开洛杉矶直奔纽约,另一辆火车以第小时20公里的速度从纽约开往洛杉矶。
如果有一只鸟,以外30公里每小时的速度和两辆火车现时启动,从洛杉矶出发,碰到另辆车后返回,依次在两辆火车来回的飞行,直道两面辆火车相遇,请问,这只小鸟飞行了多长距离?13、你有两个罐子,50个红色弹球,50个蓝色弹球,随机选出一个罐子,随机选取出一个弹球放入罐子,怎么给红色弹球最大的选中机会?在你的计划中,得到红球的准确几率是多少?14、想象你在镜子前,请问,为什么镜子中的影像可以颠倒左右,却不能颠倒上下?15、你有四人装药丸的罐子,每个药丸都有一定的重量,被污染的药丸是没被污染的重量+1.只称量一次,如何判断哪个罐子的药被污染了?16、如果你有无穷多的水,一个3夸脱的和一个5夸脱的提桶,你如何准确称出4夸脱的水?17、你有一桶果冻,其中有黄色,绿色,红色三种,,闭上眼睛选出同样颜色的两个,抓取同种颜色的两个。
抓取多少个就可以确定你肯定有两个同一颜色的果冻?18、将汽车钥匙插入车门,向哪个方向旋转就可以打开车锁?19、如果要你能去掉50个州的任何一个,那你去掉哪一个,为什么?20、对一批编号为1~100 全部开关朝上开的灯进行以下操作凡是1 的倍数反方向拨一次开关2 的倍数反方向又拨一次开关3 的倍数反方向又拨一次开关。
问最后为关熄状态的灯的编号。
21、假设一张圆盘像唱机上的唱盘那样转动。
这张盘一半是黑色,一半是白色。
假设你有数量不限的一些颜色传感器。
要想确定圆盘转动的方向,你需要在它周围摆多少个颜色传感器?它们应该被摆放在什么位置?22、假设时钟到了12点。
注意时针和分针重叠在一起。
在一天之中,时针和分针共重叠多少次?你知道它们重叠时的具体时间吗?23、中间只隔一个数字的两个奇数被称为奇数对,比如17和19。
证明奇数对之间的数字总能被6整除(假设这两个奇数都大于6)。
现在证明没有由三个奇数组成的奇数对。
24、一个屋子有一个门(门是关闭的)和3盏电灯。
屋外有3个开关,分别与这3盏灯相连。
你可以随意操纵这些开关,可一旦你将门打开,就不能变换开关了。
确定每个开关具体管哪盏灯。
25、假设你有8个球,其中一个略微重一些,但是找出这个球的惟一方法是将两个球放在天平上对比。
最少要称多少次才能找出这个较重的球?26、下面玩一个拆字游戏,所有字母的顺序都被打乱。
你要判断这个字是什么。
假设这个被拆开的字由5个字母组成:1.共有多少种可能的组合方式?2.如果我们知道是哪5个字母,那会怎么样?3.找出一种解决这个问题的方法。
27、有4个女人要过一座桥。
她们都站在桥的某一边,要让她们在17分钟内全部通过这座桥。
这时是晚上。
她们只有一个手电筒。
最多只能让两个人同时过桥。
不管是谁过桥,不管是一个人还是两个人,必须要带着手电筒。
手电筒必须要传来传去,不能扔过去。
每个女人过桥的速度不同,两个人的速度必须以较慢的那个人的速度过桥。
第一个女人:过桥需要1分钟;第二个女人:过桥需要2分钟;第三个女人:过桥需要5分钟;第四个女人:过桥需要10分钟。
比如,如果第一个女人与第4个女人首先过桥,等她们过去时,已经过去了10 分钟。
如果让第4个女人将手电筒送回去,那么等她到达桥的另一端时,总共用去了20分钟,行动也就失败了。
怎样让这4个女人在17分钟内过桥?还有别的什么方法?28、如果你有两个桶,一个装的是红色的颜料,另一个装的是蓝色的颜料。
你从蓝色颜料桶里舀一杯,倒入红色颜料桶,再从红色颜料桶里舀一杯倒入蓝颜料桶。
两个桶中红蓝颜料的比例哪个更高?通过算术的方式来证明这一点。
B:疯狂计算29、已知两个1~30之间的数字,甲知道两数之和,乙知道两数之积。
甲问乙:"你知道是哪两个数吗?"乙说:"不知道";乙问甲:"你知道是哪两个数吗?"甲说:"也不知道";于是,乙说:"那我知道了";随后甲也说:"那我也知道了";这两个数是什么?30、4,4,10,10,加减乘除,怎么出24点?31、1000!有几位数,为什么?32、F(n)=1 n>8 n<12F(n)=2 n<2F(n)=3 n=6F(n)=4 n=other使用+ - * /和sign(n)函数组合出F(n)函数sign(n)=0 n=0sign(n)=-1 n<0sign(n)=1 n>033、编一个程序求质数的和例如F(7)=1+3+5+7+11+13+17=5834、请仅用一支笔画四根直线将上图9 各点全部连接35、三层四层二叉树有多少种36、1--100000 数列按一定顺序排列,有一个数字排错,如何纠错?写出最好方法。
两个数字呢?37、链接表和数组之间的区别是什么?38、做一个链接表,你为什么要选择这样的方法?39、选择一种算法来整理出一个链接表。
你为什么要选择这种方法?现在用O(n)时间来做。
40、说说各种股票分类算法的优点和缺点。
41、用一种算法来颠倒一个链接表的顺序。
现在在不用递归式的情况下做一遍。
42、用一种算法在一个循环的链接表里插入一个节点,但不得穿越链接表。
43、用一种算法整理一个数组。
你为什么选择这种方法?44、用一种算法使通用字符串相匹配。
45、颠倒一个字符串,优化速度,优化空间。
46、颠倒一个句子中的词的顺序,比如将"我叫克丽丝"转换为"克丽丝叫我",实现速度最快,移动最少。
47、找到一个子字符串,优化速度,优化空间。
48、比较两个字符串,用O(n)时间和恒量空间。
49、假设你有一个用1001个整数组成的数组,这些整数是任意排列的,但是你知道所有的整数都在1到1000(包括1000)之间。
此外,除一个数字出现两次外其他所有数字只出现一次。
假设你只能对这个数组做一次处理,用一种算法找出重复的那个数字。
如果你在运算中使用了辅助的存储方式,那么你能找到不用这种方式的算法吗?50、不用乘法或加法增加8倍。
现在用同样的方法增加7倍。