一亩三分地论坛

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

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

linkedin两轮电面

[复制链接] |试试Instant~ |关注本帖
returning 发表于 2015-12-3 03:12:39 | 显示全部楼层 |阅读模式

2015(10-12月) 码农类 博士 全职@Linkedin - 网上海投 - 技术电面 |Other在职跳槽

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

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

x
linkedin电面了两轮,两轮都有点偏向design,准备的算法一道都没遇到,不过这两道都是原题,只是考的不大多。

第一轮:
bounded blocking queue, 这道题有个extension,希望大家注意,他要求你实现multiplewriter(),就是说,如果一个writer一次想写入more than 1 element怎么做,注意,如果当时没有空间写,这个writer需要在那里等待reader,同时block其它writer。我当时没准备好,纠结了半天,其实很好handle。

第二轮:
virtual memory坏处,浏览器tab是thread还是process。design题目是那个write/get/getRandom/deleteRandom都是O(1)的题目,我开始写的code和他想要的略有不同,最正确解法是vector里面同时存key/val,hashtable里面存key,value是vector的index。我的vector里面只存了key,所以多用了一个hashtable,不过最后也经过提示找到了这种方法。

开始coding时候差不多25分钟过去了,最后大概25分钟写完code,就随便问了点问题,就over了。. visit 1point3acres.com for more.

这样是不是有大米,不然每次回帖好痛苦。。。。


补充内容 (2015-12-3 03:14):
大家面完了都要记得给面试官写thank you letter,还有,面试要跟着对方思路走。有时候刷题太多很容易自己想到其他地方去但是面试官根本不问你。。。。囧。

评分

1

查看全部评分

leixiang5 发表于 2015-12-3 03:32:40 | 显示全部楼层
为啥要写呢?留个好印象么?楼主结束的时候跟面试官要联系方式了?表示给two sigma全部面试官发了email和linkedin上connect..没有一个鸟我。。
回复 支持 反对

使用道具 举报

 楼主| returning 发表于 2015-12-3 03:36:29 | 显示全部楼层
leixiang5 发表于 2015-12-3 03:32
为啥要写呢?留个好印象么?楼主结束的时候跟面试官要联系方式了?表示给two sigma全部面试官发了email和li ...

只是个建议而已,mitbbs上有提,出于礼貌而已。
回复 支持 反对

使用道具 举报

queeniejing 发表于 2015-12-3 03:40:20 | 显示全部楼层
LZ你面哪个组? 为什么有两轮电面呢?
回复 支持 反对

使用道具 举报

 楼主| returning 发表于 2015-12-3 03:54:59 | 显示全部楼层
queeniejing 发表于 2015-12-3 03:40. visit 1point3acres.com for more.
LZ你面哪个组? 为什么有两轮电面呢?

system infra, 估计嫌我第一轮没面好吧,当时确实没面好。
回复 支持 反对

使用道具 举报

leixiang5 发表于 2015-12-3 03:59:20 | 显示全部楼层
returning 发表于 2015-12-3 03:36
只是个建议而已,mitbbs上有提,出于礼貌而已。

好的。谢谢楼主分享。
回复 支持 反对

使用道具 举报

hyliu0000 发表于 2015-12-3 04:14:56 | 显示全部楼层
楼主,virtual memory 有什么坏处?是因为他会比较慢吗?
回复 支持 反对

使用道具 举报

不再记起 发表于 2015-12-3 04:37:31 | 显示全部楼层
LZ是面的Full-time吗?我11.19号也面的infra组,握个手!
回复 支持 反对

使用道具 举报

lynchbeck 发表于 2015-12-3 04:44:06 | 显示全部楼层
lz是周五拿到回馈的吗?就是告诉你过了准备预约下一轮面试。谢谢
回复 支持 反对

使用道具 举报

 楼主| returning 发表于 2015-12-3 05:14:18 | 显示全部楼层
hyliu0000 发表于 2015-12-3 04:14
楼主,virtual memory 有什么坏处?是因为他会比较慢吗?

问的是virtual memory用太多有什么坏处。
回复 支持 反对

使用道具 举报

hyliu0000 发表于 2015-12-3 05:21:56 | 显示全部楼层
returning 发表于 2015-12-3 05:14
问的是virtual memory用太多有什么坏处。
. 鍥磋鎴戜滑@1point 3 acres
恩 我就是想知道用多了有什么坏处。 楼主怎么答得?
回复 支持 反对

使用道具 举报

 楼主| returning 发表于 2015-12-3 08:40:51 | 显示全部楼层
hyliu0000 发表于 2015-12-3 05:21
恩 我就是想知道用多了有什么坏处。 楼主怎么答得?
. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
貌似他只需要慢这个答案。
回复 支持 反对

使用道具 举报

hyliu0000 发表于 2015-12-3 10:59:09 | 显示全部楼层
楼主,第一个题你怎么答得? 我写了一个,能否把你的玉给引下来啊?
  1. class BoundedBlockingQueue{
  2.             Queue<Integer> q = new LinkedList<>();
  3.             Lock rwLock = new ReentrantLock();
  4.             Condition notFull = rwLock.newCondition();
  5.             Condition notWrite = rwLock.newCondition();
  6.             int capcity = 0;
  7.             AtomicInteger count = new AtomicInteger(0);
  8.             AtomicBoolean isWriting = new AtomicBoolean(false);
  9.             public BoundedBlockingQueue(int c) {
  10.                 capcity = c;
  11.             }

  12.             public void add(Integer elem) throws Exception{. From 1point 3acres bbs
  13.                 rwLock.lock();.鐣欏璁哄潧-涓浜-涓夊垎鍦
  14.                 try {
  15.                     int i = 0;
  16.                     while (count.get() == capcity) {
  17.                         if (i == 0) System.out.println("queue is full, count is" + count.get());. From 1point 3acres bbs
  18.                         i++;. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
  19.                         notFull.await();
  20.                     }
  21.                     q.add(elem);
  22.                     count.incrementAndGet();
  23.                     System.out.println("added " + elem);
  24.                 } 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
  25.                 finally{rwLock.unlock();}
  26.             }

  27.             public Integer get() {
  28.                 rwLock.lock();
  29.                 try{
  30.                     Integer result = q.poll();
  31.                     count.decrementAndGet();-google 1point3acres
  32.                     notFull.signalAll();
  33.                     return result;
  34.                 }. 1point 3acres 璁哄潧
  35.                 finally {
  36.                     rwLock.unlock();. Waral 鍗氬鏈夋洿澶氭枃绔,
  37.                 }

  38.             }

  39.             public void multipleWrite(List<Integer> elems) throws Exception{. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴

  40.                 rwLock.lock();
  41.                 if(isWriting.get() == true) notWrite.await();
  42.                 isWriting.compareAndSet(false, true);
  43.                 for(Integer elem: elems){
  44.                     int i = 0;
  45.                     while(count.get() == capcity){. more info on 1point3acres.com
  46.                         if(i == 0) System.out.print("mutliple wirte full");
  47.                         i ++;. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
  48.                         notFull.await();
  49.                     }
  50.                     q.add(elem);
  51.                     count.incrementAndGet();
  52.                     System.out.println("added " + elem);
  53.                 }
  54.                 isWriting.compareAndSet(true, false);
  55.                 notWrite.signalAll();
  56.                 rwLock.unlock();
  57.             }
  58.         }
复制代码
回复 支持 反对

使用道具 举报

 楼主| returning 发表于 2015-12-3 11:45:59 | 显示全部楼层
hyliu0000 发表于 2015-12-3 10:59
楼主,第一个题你怎么答得? 我写了一个,能否把你的玉给引下来啊?

你这个java我看不懂,我是用c++,关键就一点, multiplewrite时候,multiplewriter暂时give up lock之后只有reader能够被唤醒继续,而所有的single writer都需要继续等待。

补充内容 (2015-12-3 11:47):
网上有bounded blocking queue很多资料,最好看那些pdf,一些教授讲课的教材,而不是随便找个论坛看答案。
回复 支持 反对

使用道具 举报

hercule24 发表于 2015-12-7 06:34:12 | 显示全部楼层
请问楼主 一轮之后 过了几天拿到的第二轮啊
回复 支持 反对

使用道具 举报

 楼主| returning 发表于 2015-12-7 07:18:41 | 显示全部楼层
hercule24 发表于 2015-12-7 06:34
请问楼主 一轮之后 过了几天拿到的第二轮啊

过了两天
回复 支持 反对

使用道具 举报

飞跃太平洋! 发表于 2015-12-7 13:22:20 | 显示全部楼层
问一下楼主 只唤醒reader怎么实现?
回复 支持 反对

使用道具 举报

本版积分规则

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

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

关闭

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

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

custom counter

GMT+8, 2016-12-3 02:17

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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