推荐:数据科学课程和书籍清单以及培训讲座


一亩三分地论坛

 找回密码
 获取更多干活,快来注册

一亩三分地官方iOS手机应用下载
查看: 1947|回复: 7
收起左侧

google 3/13 电面 面经 全程听不清他在说什么

[复制链接] |试试Instant~ |关注本帖
fsc111 发表于 2015-3-14 05:50:50 | 显示全部楼层 |阅读模式

2015(1-3月) 码农类 硕士 全职@Google - 内推 - 技术电面 |Other

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?获取更多干活,快来注册

x
一共三题,前两题基本没问题,第三题一开始理解错了题意,后来经过他纠正,勉强写出来了,有几个bug经过他提示修改了。他应该是在会议室里 开着免提打的电话。我实在听不清他在说什么。幸好题目都是贴在 google doc上的。题还算是做出来了。在45分钟之内。就这样吧。
  1. Part 0:
  2. Write a method to return all squares up to a given number:-google 1point3acres

  3. 8 -> 0, 1, 4
  4. 9 -> 0, 1, 4, 9
  5. class Solution{
  6.         public ArrayList<Integer> squares(int num){
  7.                
  8. ArrayList<Integer> result = new ArrayList<>();
  9. if(num<0) return result;. from: 1point3acres.com/bbs
  10. .1point3acres缃
  11. for(int i = 0; i*i<=num;i++){
  12.                         result.add(i*i);
  13. }
  14. return result;
  15. }
  16. }
  17. .鏈枃鍘熷垱鑷1point3acres璁哄潧
  18. Part 1:
  19. Write a method which returns whether a number is a sum of two squares.

  20. isSumOfTwoSquares(13) -> true
  21. 13 = 9 + 4
  22. . 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
  23. isSumOfTwoSquares(14) -> false

  24. isSumOfTwoSquares(25) -> true
  25. 25 = 25 + 0

  26. isSumOfTwoSquares(8) -> true
  27. 8 = 4 + 4

  28. class Solution{
  29.         public boolean isSumOfTwoSquares(int sum){
  30.         if(sum<0) return false;. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴

  31. for(int i = 0; i*i<=sum/2; i++){. From 1point 3acres bbs
  32.                 int left = sum - i*i;
  33.                 if((int)Math.sqrt(left)*(int)Math.sqrt(left)==left) return true;. 1point 3acres 璁哄潧
  34. }
  35. return false;. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
  36. }
  37. }

  38. Part 2:
  39. What is the big-O time complexity of your isSumOfTwoSquares method?
  40. O(log (n / 2))

  41. Part 3:
  42. Write a method which expresses a number as a sum of squares, using as few terms as possible.

  43. For example
  44. 14 = 9 + 4 + 1
  45. 13 = 9 + 4
  46. 12 = 4 + 4 + 4 (NOT 9 + 1 + 1 + 1)

  47. 5 = 4 + 1

  48. class Solution{
  49.         public ArrayList<Integer> minNum(int sum){
  50.         ArrayList<ArrayList<Integer>> list = new ArrayList<>();
  51. for(int i = 0; i<=sum; i++){
  52.         list.add(new ArrayList<Integer>());
  53. }
  54. -google 1point3acres
  55. list.get(1).add(1);
  56. list.get(2).add(1);
  57. list.get(2).add(1);
  58. int min = Integer.MAX_VALUE;
  59.         for(int i = 3; i<sum;i++){-google 1point3acres
  60.                 int p=1;
  61.                 ArrayList<Integer> tem = new ArrayList<>();
  62. while(p*p<=i){
  63.         int left = i- p*p;
  64.         //if((int)Math.sqrt(left)*(int)Math.sqrt(left)!=left){
  65.         //        p++;
  66.         //        continue;-google 1point3acres
  67. //}-google 1point3acres
  68. if(list.get(left).size()+1<min){
  69.         min = list.get(left).size()+1;
  70.         tem = new ArrayList<Integer>(list.get(left));. 鍥磋鎴戜滑@1point 3 acres
  71.         tem.add(p*p);
  72. }
  73. p++;-google 1point3acres

  74. list.get(i).addAll(tem);
  75. }
  76. }
  77. return list.get(sum);
  78. }
  79. }

复制代码

补充内容 (2015-3-20 03:58):
已经拿到 onsite

评分

2

查看全部评分

bobingmm 发表于 2015-3-15 07:14:22 | 显示全部楼层
关注一亩三分地公众号:
Warald_一亩三分地
我觉得最后一问很像word break II。
回复 支持 反对

使用道具 举报

readman 发表于 2015-3-15 07:39:57 | 显示全部楼层
关注一亩三分地微博:
Warald
原来大牛面g家, 都不需要听懂
回复 支持 反对

使用道具 举报

mattsun 发表于 2015-3-16 02:10:05 | 显示全部楼层
Part 2为什么是log(n)? i从1到sqrt(n)
回复 支持 反对

使用道具 举报

 楼主| fsc111 发表于 2015-3-16 04:57:24 | 显示全部楼层
mattsun 发表于 2015-3-16 02:10
Part 2为什么是log(n)? i从1到sqrt(n)

恩 应该是sqrt(n/2)
回复 支持 反对

使用道具 举报

leyhzm 发表于 2015-3-16 10:06:19 | 显示全部楼层
楼主,你做的好棒啊,我觉得面试写成这样真的很牛了。
第三题比如130,既可以49, 81,也可以9, 121,这样的话输出哪个呢?
谢谢!!!
回复 支持 反对

使用道具 举报

pulpfree009 发表于 2015-3-18 12:39:48 | 显示全部楼层
part3 能做到sqrt(N)
回复 支持 反对

使用道具 举报

 楼主| fsc111 发表于 2015-3-20 03:57:52 | 显示全部楼层
leyhzm 发表于 2015-3-16 10:06
楼主,你做的好棒啊,我觉得面试写成这样真的很牛了。
第三题比如130,既可以49, 81,也可以9, 121,这样 ...

. 1point 3acres 璁哄潧两个答案随便输出一个就行了
回复 支持 反对

使用道具 举报

本版积分规则

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明

custom counter

GMT+8, 2017-7-24 11:02

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表