车版热帖:大家对买豪车怎么看

一亩三分地论坛

 找回密码
 Sign Up 注册获取更多干货
码农求职神器Triplebyte:
不用海投,内推多家公司面试
[Google级团队]:实时大数据分析领域践行者
北京/深圳-大数据/搜索/机器学习职位
日志易机器大数据行业践行者Web/大数据/机器学习等职位-北京or深圳
把贵司招聘信息放这里
查看: 4786|回复: 16
收起左侧

Uber两轮电面

[复制链接] |试试Instant~ |关注本帖
kobe2008 发表于 2015-8-20 03:58:36 | 显示全部楼层 |阅读模式

2015(7-9月) 码农类General 本科 全职@Uber - 内推 - 技术电面  | Fail | 在职跳槽

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

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

x
第一次发帖,求米~~-google 1point3acres

第一轮电面:
1. 自我介绍. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
2. 项目介绍,针对项目问相关的技术问题
3. Coding Question,用的coderPad, 比较两个Map Object,Map的Value可能有两种情况 1. Strings; 2. Map<String, Object> objects

第二轮电面:. visit 1point3acres.com for more.
1. 同样的自我介绍
2. 同样的项目介绍,中间提问项目中最困难的部分是哪部分,详细序数
3. Coding Question, LeetCode Valid Parentheses.
    Follow up 1: 如果中间有别的字符怎么办
    Follow up 2: 如果添加别的括号种类比如<>,如何做到对原先的代码改动尽量少

题不难而且都答上来了,自我感觉也不错,可惜还是挂了......不知道是Uber的Bar太高还是别的原因......

评分

4

查看全部评分

dobestdobest 发表于 2015-8-20 08:23:03 | 显示全部楼层

第一个
  1. import java.util.HashMap;
  2. import java.util.Map;

  3. public class Solution {
  4.     public static void main(String[] args) {. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
  5.         Map<String, Object> first = new HashMap<String, Object>();.鐣欏璁哄潧-涓浜-涓夊垎鍦
  6.         Map<String, Object> second = new HashMap<String, Object>();
  7.         Map<String, Object> third = new HashMap<String, Object>();
  8.         Map<String, Object> fourth = new HashMap<String, Object>();

  9.         first.put("12", "abc");
  10.         second.put("12", third);. 鍥磋鎴戜滑@1point 3 acres
  11.         third.put("12", fourth);
  12.         fourth.put("12", "aba");. 鍥磋鎴戜滑@1point 3 acres

  13.         Answer ans = new Answer();
  14.         System.out.println(ans.compare(first, second, "12"));
  15.     }
  16. }.鏈枃鍘熷垱鑷1point3acres璁哄潧

  17. class Answer {
  18.     public int compare(Map<String, Object> first,
  19.                        Map<String, Object> second,. Waral 鍗氬鏈夋洿澶氭枃绔,
  20.                        String key) {
  21.         String firstValue = getString(first, key);
  22.         String secondValue = getString(second, key);

  23.         if (firstValue != null && secondValue != null) {
  24.             return firstValue.compareTo(secondValue);
  25.         } else {
  26.             return 0;
  27.         }
  28.     }

  29.     private String getString(Map<String, Object> hash, String key) {
  30.         while (hash.containsKey(key)) {
  31.             Object value = hash.get(key);
  32.             if (value instanceof String) {. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
  33.                 return (String) value;
  34.             } else if (value instanceof Map) {
  35.                 hash = (Map<String, Object>) value;
  36.             }
  37.         }
  38.         return null;
  39.     }
  40. }
复制代码
回复 支持 反对

使用道具 举报

dobestdobest 发表于 2015-8-20 08:25:07 | 显示全部楼层
第二个
  1. import java.util.*;

  2. public class Solution {
  3.     public static void main(String[] args) {
  4.         Answer ans = new Answer();
  5.         System.out.println(ans.isValid("(){}[]"));
  6.         System.out.println(ans.isValid("(()){{[()]}}[]"));
  7.         System.out.println(ans.isValid("((){}[]"));
  8.         System.out.println(ans.isValid("(){][}[]"));
  9.     }
  10. }
  11. -google 1point3acres
  12. class Answer {
    .1point3acres缃
  13.     public boolean isValid(String input) {
  14.         Stack<Character> stack = new Stack<Character>();
  15.         Map<Character, Character> hash = new HashMap<Character, Character>();
  16.         hash.put('}', '{');
  17.         hash.put(']', '[');
  18.         hash.put(')', '(');

  19.         HashSet<Character> set = new HashSet<Character>(hash.values());

  20.         for (int i = 0; i < input.length(); i++) {. visit 1point3acres.com for more.
  21.             char c = input.charAt(i);
  22.             if (set.contains(c)) {
  23.                 stack.push(c);
  24.             } else if (hash.containsKey(c)) {
  25.                 if (stack.peek() == hash.get(c)) {
  26.                     stack.pop();
    . more info on 1point3acres.com
  27.                 } else {
  28.                     return false;
  29.                 } 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
  30.             }
  31.         }

  32.         return stack.isEmpty();. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
  33.     }
  34. }
复制代码
回复 支持 反对

使用道具 举报

ChrisGates23 发表于 2015-8-20 09:39:26 | 显示全部楼层
请问lz怎么争取的两轮电面的机会
回复 支持 反对

使用道具 举报

 楼主| kobe2008 发表于 2015-8-20 23:17:16 | 显示全部楼层
ChrisGates23 发表于 2015-8-20 09:39
请问lz怎么争取的两轮电面的机会

找朋友内推的,第一轮Positive就给了第二轮
回复 支持 反对

使用道具 举报

maxnima 发表于 2015-8-21 00:04:48 | 显示全部楼层
mark (word count, word count)
回复 支持 反对

使用道具 举报

yannan 发表于 2015-8-22 05:14:09 | 显示全部楼层
感谢分享!请问lz面的是什么组?
回复 支持 反对

使用道具 举报

会编程的猪先生 发表于 2015-9-4 14:55:36 | 显示全部楼层
yannan 发表于 2015-8-22 05:14
感谢分享!请问lz面的是什么组?

经常看到神牛~
想讨论下: 今天刚开始看uber面经,感觉这几个月难度还是要比上半年小些哈?

补充内容 (2015-9-4 23:42):
之后又看到难题重现了。。。
回复 支持 反对

使用道具 举报

会编程的猪先生 发表于 2015-9-4 15:04:52 | 显示全部楼层

对于map首先要比较size, 然后每个entry都要比较吧
回复 支持 反对

使用道具 举报

alucardzhou 发表于 2015-9-9 09:16:30 | 显示全部楼层
Value可能有两种情况 1. Strings; 2. Map<String, Object> objects.

如果Map中的Object可以是Map么?
如果是,就要recursive了吧。
回复 支持 反对

使用道具 举报

lijing2441 发表于 2015-9-9 09:27:43 | 显示全部楼层
不太懂第一题是什么意思,怎么比较两个Map呢?是比较其中entry的大小,还是比较两个Map里面Entry的个数呢。。。
回复 支持 反对

使用道具 举报

f1371342385 发表于 2015-9-9 10:07:15 | 显示全部楼层
LZ,über电面的话是要求当场运行的吗?
回复 支持 反对

使用道具 举报

alucardzhou 发表于 2015-9-9 10:36:14 | 显示全部楼层
lijing2441 发表于 2015-9-8 20:27
不太懂第一题是什么意思,怎么比较两个Map呢?是比较其中entry的大小,还是比较两个Map里面Entry的个数呢。 ...

应该是都要比吧。先比个数,再比每个键值对。. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
其实就跟比较两个String一样。先比长度,再比每个char。
回复 支持 反对

使用道具 举报

freemail165 发表于 2015-9-21 08:39:43 | 显示全部楼层

if(s.isEmty() || hash.get(s.pop())!=c) return false;
回复 支持 反对

使用道具 举报

idunknow 发表于 2015-9-21 23:57:20 | 显示全部楼层

有bug阿 stack not empty 直接pop 而且不需要hashset
回复 支持 反对

使用道具 举报

likenisha 发表于 2015-11-12 02:56:36 | 显示全部楼层
follow up2,  LZ回答得怎样样
回复 支持 反对

使用道具 举报

freemail165 发表于 2015-11-12 10:58:23 | 显示全部楼层
likenisha 发表于 2015-11-12 02:56
follow up2,  LZ回答得怎样样

全存在Map<Character,Character>里面
回复 支持 反对

使用道具 举报

本版积分规则

提醒:发帖可以选择内容隐藏,部分板块支持匿名发帖。请认真读完以下全部说明:

■隐藏内容方法: [hide=200]你想要隐藏的内容比如面经[/hide]
■意思是:用户积分低于200则看不到被隐藏的内容
■可以自行设置积分值,不建议太高(200以上太多人看不到),也不建议太低(那就没必要隐藏了)
■建议只隐藏关键内容,比如具体的面试题目、涉及隐私的信息,大部分内容没必要隐藏。
■微信/QQ/电子邮件等,为防止将来被骚扰甚至人肉,以论坛私信方式发给对方最安全。
■匿名发帖的板块和方法:http://www.1point3acres.com/bbs/thread-405991-1-1.html

关闭

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

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

custom counter

GMT+8, 2018-4-23 21:35

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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