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

狗家的跪经

全局:

2019(1-3月) 码农类General 本科 全职@google - 猎头 - 技术电面  | | Fail | 在职跳槽

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

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

x
去年12月底recruiter Linkedin 联系的我. 聊了之后确定面SETI。可能她后来给忘了,我也没着急,一直到1/8 才发我follow up email。想给自己多准备点时间。约了1/22的电面。
您好!
本帖隐藏的内容需要积分高于 120 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 120 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies

攒rp and 求大米。 然后还是好好准备亚麻的面试吧

评分

参与人数 1大米 +30 收起 理由
匿名用户-ZNPF3 + 30

查看全部评分


上一篇:脸书onsite面经
下一篇:丢盒子 summer 19 intern

本帖被以下淘专辑推荐:

推荐
zli_test 2019-1-25 11:20:50 | 只看该作者
全局:
gzb2011 发表于 2019-1-24 13:43
假设有个timeline,从0开始,任何人都可以call 这个set method,
t = 0
.

Here is my implementation:
  1. import java.util.concurrent.DelayQueue;
  2. import java.util.concurrent.Delayed;
  3. import java.util.concurrent.TimeUnit;

  4. public class TaskScheduling implements Runnable {

  5.     public static void main(final String[] args) {
  6.         final DelayQueue<MyDelayedTask> queue = new DelayQueue<>();
  7.         final TaskScheduling schedule = new TaskScheduling(queue);
  8.         new Thread(schedule).start();
  9.         schedule.set(new MyDelayedTask("1", System.currentTimeMillis() + 5000));// in 5 seconds
  10.         schedule.set(new MyDelayedTask("2", System.currentTimeMillis() + 1000));// in 1 second;
  11.     }

  12.     private final DelayQueue<MyDelayedTask> queue;

  13.     public TaskScheduling(final DelayQueue<MyDelayedTask> queue) {
  14.         this.queue = queue;
  15.     }

  16.     @Override
  17.     public void run() {
  18.         while (true) {
  19.             try {
  20.                 final MyDelayedTask task = queue.take();
  21.                 new Thread(task).start();
  22.             } catch (final Exception e) {
  23.                 e.printStackTrace();
  24.             }
  25.         }
  26.     }

  27.     public void set(final MyDelayedTask task) {
  28.         queue.add(task);
  29.     }
  30. }

  31. class MyDelayedTask implements Delayed, Runnable {
  32.     String id;
  33.     long startTime; // millis

  34.     public MyDelayedTask(final String id, final long startTime) {
  35.         this.id = id;
  36.         this.startTime = startTime;
  37.     }

  38.     @Override
  39.     public int compareTo(final Delayed o) {
  40.         return Long.valueOf(startTime).compareTo(((MyDelayedTask) o).startTime);
  41.     }

  42.     @Override
  43.     public long getDelay(final TimeUnit unit) {
  44.         final long delay = startTime - System.currentTimeMillis();
  45.         return unit.convert(delay, TimeUnit.MILLISECONDS);
  46.     }

  47.     @Override
  48.     public void run() {
  49.         System.out.println(toString() + " runs at " + System.currentTimeMillis());
  50.     }

  51.     @Override
  52.     public String toString() {
  53.         return id + " start time: " + startTime;
  54.     }
  55. }
复制代码


回复

使用道具 举报

推荐
 楼主| gzb2011 2019-1-25 05:43:09 | 只看该作者
全局:
zeTop 发表于 2019-1-25 04:10
题意还是不清楚能举个例子吗

假设有个timeline,从0开始,任何人都可以call 这个set method,
t = 0
.
.
t = 1 ( 假设有人 call set(task1, 10)
.
.
t = 8 (set(task2, 8)
.
.
t = 11 (这个时候 应该发生task1.run())
.

t = 16 (这个时候应该是 task2.run())

我选的是java,我给的解是给一个 class variable 然后谁call 都存到一个hashmap里。时间是key,task是value。 再用一个method去看是不是现在有task要去run.

我也问了会不会有overlap,同一个时间有多个runnable 要run, 有的话给hashmap存一个List value。
就是面完我也不知道面试官要什么。点我觉得就是看design吧,没有algorithm在里面。
我觉得这个题参考意义不大。狗家感觉都喜欢自己出题啊。我是真希望给我个算法题。
回复

使用道具 举报

推荐
 楼主| gzb2011 2019-1-25 09:17:22 | 只看该作者
全局:
zli_test 发表于 2019-1-25 08:43
This is a task scheduling question.  See here:

https://soulmachine.gitbooks.io/system-design/cont ...

感谢分享, 当时第一个想法也是想到了PriorityQueue。问了是不是要sort,然后面试官说不用那么复杂。就用了Hashmap, 是想的运行的时候就check hashmap 现在时间有没有东西。再决定。面试的时候也没把自己想法掰回去。

还是自己准备的不够呀。面试中零时太难给出答案。
回复

使用道具 举报

🔗
zeTop 2019-1-25 04:06:32 来自APP | 只看该作者
全局:
楼主面的哪个location?
回复

使用道具 举报

🔗
zeTop 2019-1-25 04:10:02 来自APP | 只看该作者
全局:
题意还是不清楚能举个例子吗
回复

使用道具 举报

🔗
asheone 2019-1-25 04:16:11 | 只看该作者
全局:
楼主这么快就出结果了么?
回复

使用道具 举报

🔗
ef50mm 2019-1-25 04:30:52 | 只看该作者
全局:
什么是SETI?
回复

使用道具 举报

🔗
 楼主| gzb2011 2019-1-25 04:54:54 来自APP | 只看该作者
全局:
asheone 发表于 2019/01/25 04:16:11
楼主这么快就出结果了么?

电话面试结果应该都是都很快出的吧 recruiter会再约一个电话聊 然后告诉你结果. 特别是fail的. 我昨天约电话今天知道结果. 那个朋友第二天早上也约电话出结果. 他也fail的
回复

使用道具 举报

🔗
 楼主| gzb2011 2019-1-25 04:56:23 来自APP | 只看该作者
全局:

software engineer tools and infrastructure
回复

使用道具 举报

🔗
 楼主| gzb2011 2019-1-25 04:59:51 来自APP | 只看该作者
全局:
zeTop 发表于 2019/01/25 04:06:32
楼主面的哪个location?

Sunnyvale. 应该是cloud team的人吧 面试的人提了。google cloud. 但我没直接问. 只问了他是什么职位做些什么.
回复

使用道具 举报

🔗
zli_test 2019-1-25 08:43:14 | 只看该作者
全局:
This is a task scheduling question.  See here:

https://soulmachine.gitbooks.io/system-design/content/cn/task-scheduler.html

评分

参与人数 1大米 +1 收起 理由
gzb2011 + 1 很有用的信息!

查看全部评分

回复

使用道具 举报

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

本版积分规则

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