回复: 23
跳转到指定楼层
上一主题 下一主题
收起左侧

google new grad电面面经

全局:

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

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
上周四面的狗家的电面,今天刚收到hr电话通知onsite,发个面经为onsite攒一波人品
您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限 或 查看其他获取积分的方式
Unlock interview details and practice with AI
Popular Interview Questions from Top Companies
,楼主用dfs暴力解的,解完也没有follow up,分析了下复杂度就结束了。
看近期面经感觉狗家近期的难度有些下降,祝各位找工顺利哈~

评分

参与人数 9大米 +36 收起 理由
Gavindoudou111 + 3 很秀
hakunamatatal + 2 很有用的信息!
lzhong + 3 给你点个赞!
wulaoshi250 + 3 很有用的信息!
Self_Learner + 2 给你点个赞!

查看全部评分


上一篇:BB 店面
下一篇:pony.ai 电话

本帖被以下淘专辑推荐:

推荐
0_- 2018-10-7 12:51:03 | 只看该作者
全局:
发现大家都喜欢往高深里扯。 其实就是一个二叉树遍历, 扯啥BFS DFS的。
回复

使用道具 举报

推荐
 楼主| 熊孩子 2018-9-30 05:19:11 | 只看该作者
全局:
420402033 发表于 2018-9-29 07:26
请问下lz什么叫字母顺序。。?

就是比如比如a < b, aa < b, 两个string谁的第一个字符小谁就小,如果相等再比较第二个,这样字,java里面可以用String.compareTo直接比就好了

评分

参与人数 1大米 +5 收起 理由
取个响亮的名号 + 5 欢迎来一亩三分地论坛!

查看全部评分

回复

使用道具 举报

推荐
DylanZhang 2018-9-29 13:18:56 | 只看该作者
全局:
这题感觉可以用bfs, 每层只走字母序最小的。 可以看做简化的trie。时间复杂度是O(n), 最坏情况是第二层有n - 1个节点。最好情况是每层有两个节点,只需要O(log n).
回复

使用道具 举报

🔗
wtcupup 2018-9-29 03:45:01 | 只看该作者
全局:
先generate all root to leaf paths 然后path reverse 一下再sort 嘛?
回复

使用道具 举报

🔗
 楼主| 熊孩子 2018-9-29 03:56:05 | 只看该作者
全局:
wtcupup 发表于 2018-9-29 03:45
先generate all root to leaf paths 然后path reverse 一下再sort 嘛?

不用sort,直接找最小的就好啦

评分

参与人数 1大米 +5 收起 理由
取个响亮的名号 + 5 欢迎来一亩三分地论坛!

查看全部评分

回复

使用道具 举报

🔗
ootsuka 2018-9-29 06:30:20 | 只看该作者
全局:
请问是 用DFS把从root经过所有的节点字母加起来,返回最小的path就好了是吧~
回复

使用道具 举报

🔗
pkk5488 2018-9-29 06:58:23 | 只看该作者
全局:
wtcupup 发表于 2018-9-29 03:45
先generate all root to leaf paths 然后path reverse 一下再sort 嘛?

每次找到一个答案和原有的比较一下,看看要不要更新就好啦
回复

使用道具 举报

🔗
420402033 2018-9-29 07:26:03 | 只看该作者
全局:
请问下lz什么叫字母顺序。。?
回复

使用道具 举报

🔗
wtcupup 2018-9-29 07:35:35 | 只看该作者
全局:
贴个 python 代码

  1. class TreeNode:
  2.     def __init__(self, x):
  3.         self.val = x
  4.         self.children = []
  5. '''
  6.               a
  7.           b   d  c
  8.         c  d         a
  9.         
  10. find lexical smallest leaf to root path, in this case we have paths cba, dba, da, aca, smallest is aca
  11. '''

  12. root = TreeNode('a')
  13. root.children.append(TreeNode('b'))
  14. root.children.append(TreeNode('d'))
  15. root.children.append(TreeNode('c'))
  16. root.children[0].children.append(TreeNode('c'))
  17. root.children[0].children.append(TreeNode('d'))
  18. root.children[2].children.append(TreeNode('a'))


  19. def findLexicanSmallestPath2(root):
  20.     def dfs(root):
  21.         if not root.children:
  22.             return root.val
  23.         return min(dfs(child)+root.val for child in root.children)
  24.     return dfs(root)

  25. print('lexical smallest leaf to root path:')
  26. print(findLexicanSmallestPath2(root))
复制代码
回复

使用道具 举报

🔗
 楼主| 熊孩子 2018-9-30 05:17:51 | 只看该作者
全局:
ootsuka 发表于 2018-9-29 06:30
请问是 用DFS把从root经过所有的节点字母加起来,返回最小的path就好了是吧~

是的,不过可以每个subtree都返回当前subtree的最小path,这样就不用全部放在root节点比较了

评分

参与人数 1大米 +5 收起 理由
取个响亮的名号 + 5 欢迎来一亩三分地论坛!

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

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