谷歌面试题及解析6篇 谷歌应届生面试题

时间:2022-11-01 18:18:00 试题
  • 相关推荐

  下面是范文网小编收集的谷歌面试题及解析6篇 谷歌应届生面试题,以供参考。

谷歌面试题及解析6篇 谷歌应届生面试题

谷歌面试题及解析1

  第一题:

  有一个人们只想生男孩子的国家,他们在有儿子之前都会继续生育。如果第一胎是女儿,他们就会继续生育直到有一个儿子。这个国家的男女儿童比例是多少?

  答案:

  这一题引发了不少争议,不过我们发现,这一题的解答步骤如下:

  1、假设一共用10对夫妻,每对夫妻有一个孩子,男女比例相等。(共有10个孩子,5男5女);2、生女孩的5对夫妻又生了5个孩子,男女比例相等。(共有15个孩子,男女儿童都是7.5个);3、生女孩的2.5对夫妻又生了2.5个孩子,男女比例相等。(共有17.5个孩子,男女儿童都是8.75个);4、因此,男女比例是1:1。

  第二题:

  多少只高尔夫球才能填满一辆校车?

  解析:

  通过这道题,谷歌希望测试出求职者是否有能力判断出解决问题的关键。

  网友的答案:

  我想,一辆标准大小的校车约有8英尺宽、6英尺高、20英尺长――我能知道这些数字完全是因为我曾经无数次被堵在校车后面。

  据此估算,一辆校车的容积约为960立方英尺,也就是160万立方英寸。一个高尔夫球的半径约为0.85英寸,我认为一个高尔夫球的体积约为2.6立方英寸。

  用校车的容积除以高尔夫球的体积,得到的结果是66万。不过,由于校车里面还有座位等等各种东西,而且高尔夫球的形状使得不同的球之间会有不少空隙。我的最终估算结果是50万。这听起来有些荒唐。如果我直接猜的话,我给出的答案肯定是10万以下,不过我相信我的数学水平。

  当然,如果这里的校车是小布什当年坐过的那种,结果还要除以2,差不多是25万个。

  第三题:

  让你清洗西雅图所有的玻璃窗,你的报价是多少?

  答案:

  这一题我们可以玩点花招,我们的答案是“每扇窗10美元”。

  第四题:

  全世界共有多少名钢琴调音师?

  答案:

  我们的回答是“要看市场情况。如果钢琴需要每周调音一次,每次调音需要1个小时,且每个调音师每周工作40个小时。我们认为每40台钢琴就需要一名调音师。”

  这个问题又被称为“费米问题”(Fermi problem)。费米提出的问题是“在芝加哥有多少钢琴调音师”。一个典型的答案是包括一系列估算数据的乘法。如果估计正确,就能得到正确答案。比如我们采用如下假设:

  芝加哥约有500万人居住;

  平均每个家庭有2人;大约有1/20的家庭有定期调音的钢琴;平均每台钢琴每年调音一次;每个调音师调整一台钢琴需要2小时;每个调音师每天工作8小时、每周5天、每年50周。

  通过这些假设我们可以计算出每年在芝加哥需要调音的钢琴数量是:

(芝加哥的500万人口)/(2人/家)×(1架钢琴/20家)×(1架钢琴调整/1年)=125000

  平均每个调音师每年能调整的钢琴数量是:

(50周/年)×(5天/周)×(8小时/天)/(1架钢琴/2小时)=1000

  芝加哥的调音师数量是:

(芝加哥需要调音的钢琴数量125,000)/(每个调音师每年能调整的钢琴数量1000)=125

  第五题:

  马路上的井盖为什么是圆的?

  答案:

  圆形的井盖在任何角度都不会掉下去。

  第六题:

  一天之中,时钟的时针和分钟会重合几次?

  答案:

  22次。

  重合的时间点分别是:上午,12:00、1:05、2:11、3:16、4:22、5:27、6:33、7:38、8:44、9:49、10:55;下午12:00、1:05、2:11、3:16、4:22、5:27、6:33、7:38、8:44、9:49、10:55。

  第七题:

  你需要确认朋友鲍勃是否有你正确的电话号码,但不能直接问他。你须在一张卡片上写下这个问题,然后交给爱娃,由爱娃把卡片交给鲍勃,再转告你答案。除了在卡片上写下这个问题外,你还必须怎样写,才能确保鲍勃在给出答案的同时,不让爱娃知道你的电话号码?(职位:软件工程师)

  答案:

  既然只需要核对鲍勃手中的号码是否正确,你只需要让他在某个特定的时刻给你打电话,如果他没打过来的话,就能确认他没有你的号码。

  第八题:

  假设你是海盗船的船长,船员们即将对黄金的分配方案投票。如果赞成票不到半数的话,你会被杀死。你怎样才能在保证自己存活的情况下拿到最多的黄金?

  答案:

  将黄金平均分给最有权势的51%的船员。

  第九题:

  有八个大小相等的球,其中有一个重量比其他球略重。如何在只用天平称两次的情况下找出那个不一样的球?

  答案:

  从八个球中取出六个,在天平两边各放三个。如果平衡,把剩下的两个球分别放在天平两边,就能找出较重的球。如果不平衡,较重的球就在天平下沉的一边,从这三个当中取出两个称量,若不平衡,下沉的一边较重,若平衡,剩下的就是较重的球。

  第十题:

  你拿着两个鸡蛋站在100层的大楼上。鸡蛋或许结实到从楼顶掉下也不会摔破,或许很易碎,在一楼摔下就破碎。最少试验多少次可以找出鸡蛋不会被摔碎的最高楼层?

  答案:

  14次。从14楼丢下第一颗鸡蛋,如果破碎了就逐层往下试验,共需14次。如果没有破碎,往上走13层;在27楼第二次丢下第一颗鸡蛋,如果碎了,换第二颗鸡蛋往上走12曾测试,若仍没碎,往上走12层试验第一颗鸡蛋;以此类推,直到走到第99层。如果鸡蛋要到100层高度落下才会破碎,总共需要14次尝试。

谷歌面试题及解析2

  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、用线性时间和常数附加空间将一篇文章的单词(不是字符)倒序。

谷歌面试题及解析3

  常见面试题解析

  问题1:你为什么觉得自己能够在这个职位上取得成就?

  分析:这是比较宽泛的问题,它给求职者提供了表明热情和挑战欲的机会。对这个问题的回答,将为面试人判断求职者是否有足够的动力和自信心提供关键信息。

  错误回答:我不知道。我擅长做很多事情。如果我能得到并且决定接受这份工作,我确信自己可以把它做得相当好,因为我过去一直都很成功。

  点评:尽管这种回答表面上可以接受,但是它在几个方面有欠缺。首先,语言无力。“擅长做很多事情”、“相当好”之类的话,都无法反映你的进取心,而如果不能表现出足够的进取心,你就很难进入最好的企业。另外,将过去做过的所有事情同现在的职位联系起来,意味着求职者对这一特定职位没有足够的成功欲望和热情。

  正确回答:从我的经历来看,这是我的职业生涯中最适合自己的一份工作。几年来,我一直在研究这个领域,也关注着贵公司,我一直希望能有这样的面试机会。我拥有必备的技能(简单讲述一个故事加以说明),确实能做好这份工作。

  点评:这是一个很有说服力的回答。首先,它告诉面试人,这个求职者拥有足够的技能和知识来完成这项工作,他所讲述的故事反映出了他的工作技能,也印证了他最初的论断。然后,求职者表示出“做好这份工作”的愿望,证明了他对这份工作具有热情和进取心。

  问题2:你最大的长处和弱点分别是什么?这些长处和弱点对你的业绩会有怎样的影响?

  分析:这个问题的着眼点并不在于你是否能认真看待自己的长处或正确认识自己的弱点,而是从整体上表现出你的价值观和对自身的看法。

  错误回答:我实在找不出自己有什么特别突出的方面,我的技能非常广泛。至于弱点,我想,如果某个项目时间拖得太久,我可能会感到厌倦。

  点评:这种回答的最大问题是,求职者实际上拒绝回答问题的第一部分。对第二部分的回答则显示出求职者可能对工作缺乏热情。基于对第一个问题的.回答,求职者很难再对后面的问题做出令人满意的回答。

  正确回答:我最大的优点就是理性思维高度发达,能够从一片混乱中整理出头绪来。我最大的弱点是,对那些没有秩序感的人,可能缺乏足够的耐心。我相信我的组织才能可以帮助企业更快地实现目标,有时候,我处理复杂问题的能力也能影响我的同事。

  点评:这个回答做到了“一箭三雕”。首先,它确实表明了求职者的最大长处。其次,它所表达的弱点实际上很容易被理解为长处。最后,它指出了这个求职者的长处对企业和其他员工的好处。

谷歌面试题及解析4

  实现一个算法来判断一个字符串中的字符是否唯一(即没有重复).不能使用额外的数据结构。 (即只使用基本的数据结构)

  解答

  首先,你可以问面试官,构成字符串的字符集有多大?是ASCII字符,还是只是26个字母? 还是有更大的字符集,对于不同的情况,我们可能会有不同的解决方案。

  如果我们假设字符集是ASCII字符,那么我们可以开一个大小为256的bool数组来表征每个字 符的出现。数组初始化为false,遍历一遍字符串中的字符,当bool数组对应位置的值为真, 表明该字符在之前已经出现过,即可得出该字符串中有重复字符。否则将该位置的bool数组 值置为true。代码如下:

  1

  2

  3

  4

  5

  6

  7

  8

  9

  10

  11

  12

  13

  bool?isUnique1(string?s)

{

  bool?a[256];

  memset(a,?0,?sizeof(a));

  int?len?=?s.length;

  for(int?i=0;?i?<?len;?++i)

{

  int?v?=?(int)s[i];

  if(a[v])?return?false;

  a[v]?=?true;

}

  return?true;

}

  该算法的时间复杂度为O(n)。我们还可以通过位运算来减少空间的使用量。 用每一位表征相应位置字符的出现。对于ASCII字符,我们需要256位,即一个长度为8的int 数组a即可。这里的关键是要把字符对应的数字,映射到正确的位上去。比如字符’b’对应的 代码是98,那么我们应该将数组中的哪一位置为1呢?用98除以32,得到对应数组a的下标: 3。98对32取模得到相应的位:2。相应代码如下:

  1

  2

  3

  4

  5

  6

  7

  8

  9

  10

  11

  12

  13

  14

  bool?isUnique2(string?s)

{

  int?a[8];

  memset(a,?0,?sizeof(a));

  int?len?=?s.length();

  for(int?i=0;?i?<?len;?++i)

{

  int?v?=?(int)s[i];

  int?idx?=?v/32,?shift=v%32;

  if(a[idx]?&?(1?<<?shift))?return?false;

  a[idx]?|=?(1?<<?shift);

}

  return?true;

}

  两个算法的本质其实是一样的,只不过一个用bool单元来表征字符出现,一个用位来表征。 完整代码如下:

  1

  2

  3

  4

  5

  6

  7

  8

  9

  10

  11

  12

  13

  14

  15

  16

  17

  18

  19

  20

  21

  22

  23

  24

  25

  26

  27

  28

  29

  30

  31

  32

  33

  34

  35

  36

  37

  38

  39

  40

#include

#include

  using?namespace?std;

  bool?isUnique1(string?s)

{

  bool?a[256];

  memset(a,?0,?sizeof(a));

  int?len?=?s.length();

  for(int?i=0;?i?<?len;?++i)

{

  int?v?=?(int)s[i];

  if(a[v])?return?false;

  a[v]?=?true;

}

  return?true;

}

  bool?isUnique2(string?s)

{

  int?a[8];

  memset(a,?0,?sizeof(a));

  int?len?=?s.length();

  for(int?i=0;?i?<?len;?++i)

{

  int?v?=?(int)s[i];

  int?idx?=?v/32,?shift=v%32;

  if(a[idx]?&?(1?<<?shift))?return?false;

  a[idx]?|=?(1?<<?shift);

}

  return?true;

}

  int?main()

{

  string?s1?=?“i am hawstein.”;

  string?s2?=?“abcdefghijklmnopqrstuvwxyzABCD1234567890”;

  cout?<<?isUnique1(s1)?<<?“ ”?<<?isUnique1(s2)?<<?endl;

  cout?<<?isUnique2(s1)?<<?“ ”?<<?isUnique2(s2)?<<?endl;

  return?0;

}

  如果字符集只是a-z(或是A-Z),那就更好办了,用位运算只需要一个整型数即可。

  1

  2

  3

  4

  5

  6

  7

  8

  9

  10

  11

  12

  bool?isUnique3(string?s)

{

  int?check?=?0;

  int?len?=?s.length();

  for(int?i=0;?i?<?len;?++i)

{

  int?v?=?(int)(s[i]-'a');

  if(check?&?(1?<<?v))?return?false;

  check?|=?(1?<<?v);

}

  return?true;

}

【JAVA实现】

  1

  2

  3

  4

  5

  6

  7

  8

  9

  public?static?boolean?isUniqueChars(String?str)?{

  int?checker?=?0;

  for?(int?i?=?0;?i?<?str.length();?++i)?{

  int?val?=?str.charAt(i)?-?‘a’;

  if?((checker?&?(1?<?0)?return?false;

  checker?|=?(1?<<?val);

}

  return?true;

}

  1

  2

  3

  4

  5

  6

  7

  8

  9

  public?static?boolean?isUniqueChars2(String?str)?{

  boolean[]?char_set?=?new?boolean[256];

  for?(int?i?=?0;?i?<?str.length();?i++)?{

  int?val?=?str.charAt(i);

  if?(char_set[val])?return?false;

  char_set[val]?=?true;

}

  return?true;

}

[谷歌面试题]

谷歌面试题及解析5

  下面是谷歌某些职位的一些面试题目,不得不说,面试官太会玩了,题目一个比一个奇葩,不说了,你们自己来感受一下。。。

  Q: 你要如何跟Larry Page(谷歌创始人之一)解释HTML 5的重要性?跟你奶奶呢?―创意专家职位

  Q: 如果你想把你的狗带到公司但是你的同事对狗过敏,你怎么办?―助理账户策略顾问职位

  Q: 一枚硬币扔了1000次,有560次正面朝上,你觉得这个硬币被搞鬼了么?―量化策略分析师职位

  Q: 如果用一句话来记住你,会是哪句话?―助理账户策略顾问职位

  Q: 如果不用工作你想做什么?―互动设计师职位

  Q: 如果你以后每天进入一个房间都只能播放同一首歌,你会选什么歌?―助理账户策略顾问职位

  Q: 给我讲个笑话。―行政助理职位

  Q: 如果现在给你一千万,你会做什么?―助理账户策略顾问职位

  Q: 美国每天有多少人剪头发?―业务专员职位

  Q: 假设你在火星上有一个殖民地,你想跟他们取得联系。那你准备如何建立一个系统与他们交流呢?―助理产品经理职位。

【拓展阅读】

  Google(中文名:谷歌),是一家美国的跨国科技企业,致力于互联网搜索、云计算、广告技术等领域,开发并提供大量基于互联网的产品与服务,其主要利润来自于AdWords等广告服务。Google由当时在斯坦福大学攻读理工博士的拉里?佩奇和谢尔盖?布卢姆共同创建,因此两人也被称为“Google Guys”。

  9月4日,Google以私营公司的形式创立,设计并管理一个互联网搜索引擎“Google搜索”。Google网站则于下半年启用。Google的使命是整合全球信息,使人人皆可访问并从中受益。Google是第一个被公认为全球最大的搜索引擎,在全球范围内拥有无数的用户 。谷歌于美国时间8月10日宣布对企业架构进行调整,创办一家名为Alphabet的“伞形公司”(Umbrella Company),Google成为Alphabet旗下子公司。

  月4日,谷歌无人机业务主管沃斯透露,预计能在推出无人机送货服务。 根据业界权威机构最新发布的“世界品牌500强”,得益于美国搜索和广告业务的增长,谷歌重返榜首,苹果和亚马逊分别位居第二和第三名。

  名称来历

  英文名称的由来斯坦福大学(Stanford University)学生肖恩?安德森(Sean Anderson)把谷歌搜索引擎和谷歌的名字带给谷歌创始人拉里?佩奇(Larry Page)。[6] 谷歌来自斯坦福BackRub项目,它的搜索排名原理是对大量的外链backlinks进行分析。安德森建议了“Googol”一词,指的是10的100次幂(方),代表互联网上的海量资源。但安德森在搜索该名字是否被注册时误打成了“google”。Googol是由美国数学家Edward Kasner9岁Google的中文页面的侄子 Milton Sirotta 发明的,后来在数学家Edward Kasner和James Newman的著作《Mathematics and the Imagination》中被引用。Google词义的另一种解释:G意义为手,00为多个范围,L意为长,E意为出,把它们合一起,意义为:Google无论在哪里都能为您搜寻出海量您所需要的资料。“Google” 该词也可以用作动词,意思类似于百度一下。

谷歌面试题及解析6

  第一题:

  有一个人们只想生男孩子的国家,他们在有儿子之前都会继续生育。如果第一胎是女儿,他们就会继续生育直到有一个儿子。这个国家的男女儿童比例是多少?

  答案:

  这一题引发了不少争议,不过我们发现,这一题的解答步骤如下:

  1、假设一共用10对夫妻,每对夫妻有一个孩子,男女比例相等。(共有10个孩子,5男5女);

  2、生女孩的5对夫妻又生了5个孩子,男女比例相等。(共有15个孩子,男女儿童都是7.5个);

  3、生女孩的2.5对夫妻又生了2.5个孩子,男女比例相等。(共有17.5个孩子,男女儿童都是8.75个);4、因此,男女比例是1:1。

  第二题:

  多少只高尔夫球才能填满一辆校车?

  解析:

  通过这道题,谷歌希望测试出求职者是否有能力判断出解决问题的关键。

  网友的答案:

  我想,一辆标准大小的校车约有8英尺宽、6英尺高、20英尺长――我能知道这些数字完全是因为我曾经无数次被堵在校车后面。

  据此估算,一辆校车的容积约为960立方英尺,也就是160万立方英寸。一个高尔夫球的半径约为0.85英寸,我认为一个高尔夫球的体积约为2.6立方英寸。

  用校车的容积除以高尔夫球的体积,得到的结果是66万。不过,由于校车里面还有座位等等各种东西,而且高尔夫球的形状使得不同的球之间会有不少空隙。我的最终估算结果是50万。这听起来有些荒唐。如果我直接猜的话,我给出的答案肯定是10万以下,不过我相信我的数学水平。

  当然,如果这里的校车是小布什当年坐过的那种,结果还要除以2,差不多是25万个。

  第三题:

  让你清洗西雅图所有的玻璃窗,你的报价是多少?

  答案:

  这一题我们可以玩点花招,我们的答案是“每扇窗10美元”。

  第四题:

  全世界共有多少名钢琴调音师?

  答案:

  我们的回答是“要看市场情况。如果钢琴需要每周调音一次,每次调音需要1个小时,且每个调音师每周工作40个小时。我们认为每40台钢琴就需要一名调音师。”

  这个问题又被称为“费米问题”(Fermi problem)。费米提出的问题是“在芝加哥有多少钢琴调音师”。一个典型的答案是包括一系列估算数据的乘法。如果估计正确,就能得到正确答案。比如我们采用如下假设:

  芝加哥约有500万人居住;

  平均每个家庭有2人;

  大约有1/20的家庭有定期调音的钢琴;

  平均每台钢琴每年调音一次;每个调音师调整一台钢琴需要2小时;每个调音师每天工作8小时、每周5天、每年50周。

  通过这些假设我们可以计算出每年在芝加哥需要调音的钢琴数量是:

(芝加哥的500万人口)/(2人/家)×(1架钢琴/20家)×(1架钢琴调整/1年)=125000

  平均每个调音师每年能调整的钢琴数量是:

(50周/年)×(5天/周)×(8小时/天)/(1架钢琴/2小时)=1000

  芝加哥的调音师数量是:

(芝加哥需要调音的钢琴数量125,000)/(每个调音师每年能调整的钢琴数量1000)=125

相关热搜