一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

扫码关注一亩三分地公众号
查看: 252|回复: 2
收起左侧

呀嘛熏 社招 OA

[复制链接] |试试Instant~ |关注本帖
primbo 发表于 2016-11-16 01:31:42 | 显示全部楼层 |阅读模式

2016(10-12月) 码农类 硕士 全职@Amazon - 网上海投 - 在线笔试 |Otherfresh grad应届毕业生

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

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

x
内推了亚麻 一直没有回复,上周五海投了一个社招的职位,要求一到三年工作经验,没想到第二天就给回复了。然后直接给了OA。今天搞定了。和之前论坛上发的题目不太一样,不是太难。接下来上题:第一题: 括号match  给一个string 里面是类似(({{[[<<adfadfad>adfasdf>}])>,问是不是match,leetcode easy级别的。. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
第二题: 类似于 Lowest Common Ancestor of a Binary Tree   但是完全不一样。是说给一个 公司的级别树,最上面是CEO, 然后employee下面有需要向他report的人的话,这个employee 就是manager,每个employee 最多有一个manager。然后给你两个employee 让你找出他们的最低的common manager。employee的数据结构如下:. more info on 1point3acres.com
Employee {
    int id;
    string  name;
   vector<Employee*>  reports;
   vector<Employee*> getReports();
   int getId();
   string getName();
}
Employee* findCommonManager(Employee* ceo,  Employee* employee1, Employee* employee2) {
}.鏈枃鍘熷垱鑷1point3acres璁哄潧
方法就是用DFS分别去找employee1 and employee2. 找的过程中把她们的manager存到stack里面。 然后对stack1 and stack2 的size进行比较。把size大的那个stack先干成一样的。然后调用getId()去比 较
while (stack1.top() -> getId() != stack2.top() -> getId()) {.1point3acres缃
         stack1.pop();
         stack2.pop();. Waral 鍗氬鏈夋洿澶氭枃绔,
}. more info on 1point3acres.com
if(!stak1.empty() ) . Waral 鍗氬鏈夋洿澶氭枃绔,
      return  stak1.top();. 1point3acres.com/bbs
return nullptr;


补充内容 (2016-11-17 01:58):
第二天就被拒了。好无情。这是简历得有多差。

评分

2

查看全部评分

本帖被以下淘专辑推荐:

llxxyy 发表于 2016-11-17 03:21:41 | 显示全部楼层
楼主抱抱,感觉亚麻确实略坑。小伙伴帮我推给manager,qa岗,结果我收到的和你一样的链接。谢谢楼主分享,加油哦!
回复 支持 反对

使用道具 举报

Owenli20 发表于 2016-11-17 03:59:35 | 显示全部楼层
这道题用LCA那种分治法哪里不对?

  1. Employee* findCommonManager(Employee* ceo,  Employee* employee1, Employee* employee2) {
  2.     if (ceo == nullptr) {.鐣欏璁哄潧-涓浜-涓夊垎鍦
  3.         return nullptr;
    .鐣欏璁哄潧-涓浜-涓夊垎鍦
  4.     }
  5.     if (ceo == employee1) {
  6.         return employee1;
  7.     }
  8.     if (ceo == employee2) {
  9.         return employee2;
  10.     }

  11.     bool isManagingEmployee1 = false;
  12.     bool isManagingEmployee2 = false;. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
  13.     for (int i = 0; i < ceo->getReports().size(); i++) {. visit 1point3acres.com for more.
  14.         Employee* e = findCommonManager(ceo->getReports()[i], employee1, employee2);
  15.         if (e == employee1) {. more info on 1point3acres.com
  16.             isManagingEmployee1 = true;
  17.         } else if (e == employee2) {
  18.             isManagingEmployee2 = true;. 1point3acres.com/bbs
  19.         } else if (e != nullptr) {
  20.             return e;. visit 1point3acres.com for more.
  21.         }
  22.     }. 1point 3acres 璁哄潧

  23.     if (isManagingEmployee1 && isManagingEmployee2) {
  24.         return ceo;
  25.     }
  26.     if (isManagingEmployee1) {
  27.         return employee1;
  28.     } 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
  29.     if (isManagingEmployee2) {
  30.         return employee2; 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
  31.     }
  32.     return nullptr;
  33. }
复制代码
回复 支持 反对

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

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

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2016-12-9 04:09

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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