传说中的谷歌招聘委员会成员之一,从幕后走出来,教你学系统设计!


一亩三分地论坛

 找回密码
 获取更多干活,快来注册
天天打游戏、照样领工资、还办H1B
这份工作你要不要?
把贵司招聘信息放这里
查看: 1169|回复: 26
收起左侧

巨硬728 hiring event

[复制链接] |试试Instant~ |关注本帖
lynlion 发表于 2017-8-2 11:35:55 | 显示全部楼层 |阅读模式

2017(7-9月) 码农类 硕士 全职@Microsoft - 猎头 - Onsite |Fail在职跳槽

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

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

x
上周五下午参加的hiring event,一共四轮,从12:30 到4:30,到现在还没有消息,估计跪了。1. 一个白人,问简历,题目是给两个string,判断这两个string是否都包含相同的单词。我给的解法,用两个set 分别存两个单词,然后再比较两个set中的单词是否一样,写完有个小bug,跑test case的时候自己发现了。
2. 三哥,system design,设计一个读写log的系统。
3. 三哥,把二叉树给定级别的节点从左到右连接起来,先用queue做层级遍历解决后,又用了递归解决。然后三哥纠结了半天,才搞清楚他是想让我在递归的时候传一个类似c++中的指针进去,我和他解释了java里是pass by value的,没有他想用的那个指针,他说哦,他用c#是可以的。。。。
4. 三姐,问简历,求解逆波兰表达式,讨论了很多合法输入的情况。.鏈枃鍘熷垱鑷1point3acres璁哄潧



题目都满简单的,但是不知道是不是做题不是很快,每轮都只做了一题。

评分

1

查看全部评分

yunliang2014 发表于 2017-8-2 11:54:51 | 显示全部楼层
请问楼主是参加哪个组的hire event?
回复 支持 反对

使用道具 举报

 楼主| lynlion 发表于 2017-8-2 12:34:40 | 显示全部楼层
yunliang2014 发表于 2017-8-2 11:54. visit 1point3acres.com for more.
请问楼主是参加哪个组的hire event?

Azure 组字数
回复 支持 反对

使用道具 举报

yunliang2014 发表于 2017-8-2 12:34:56 | 显示全部楼层
楼主,不要着急,也有几周才有消息的
回复 支持 反对

使用道具 举报

yunliang2014 发表于 2017-8-2 12:37:44 | 显示全部楼层
关于第三 题,阿三是不是想让你加个指针next指向同一层的下一个节点?
回复 支持 反对

使用道具 举报

linlin1990 发表于 2017-8-2 13:50:23 | 显示全部楼层
咦我朋友说他被面的全是hard的。。。。楼主好运
回复 支持 反对

使用道具 举报

 楼主| lynlion 发表于 2017-8-2 14:01:08 | 显示全部楼层
yunliang2014 发表于 2017-8-2 12:37
关于第三 题,阿三是不是想让你加个指针next指向同一层的下一个节点?

不是,每个节点都有left, right, next,他说的指针是指每次递归的时候穿一个前一个节点pre的指针,不断的更新指针,是的到达需要的level时,把前一个节点和当前节点连接起来pre.next = cur
回复 支持 反对

使用道具 举报

 楼主| lynlion 发表于 2017-8-2 14:05:58 | 显示全部楼层
linlin1990 发表于 2017-8-2 13:50
咦我朋友说他被面的全是hard的。。。。楼主好运

谢谢,感觉凶多吉少,可能面试官不一样把,我基本都是中等难度的题目,他也是728的吗,他有消息了吗
回复 支持 反对

使用道具 举报

最初的梦想2013 发表于 2017-8-2 21:02:25 | 显示全部楼层
这么多三哥三姐啊,看来巨硬也被烙印占领了,亚麻也是乌压压一大片烙印
回复 支持 反对

使用道具 举报

linlin1990 发表于 2017-8-3 00:51:12 | 显示全部楼层
lynlion 发表于 2017-8-2 14:05
谢谢,感觉凶多吉少,可能面试官不一样把,我基本都是中等难度的题目,他也是728的吗,他有消息了吗

他被拒了。。。
回复 支持 反对

使用道具 举报

linlin1990 发表于 2017-8-3 00:51:39 | 显示全部楼层
lynlion 发表于 2017-8-2 14:05
谢谢,感觉凶多吉少,可能面试官不一样把,我基本都是中等难度的题目,他也是728的吗,他有消息了吗

哦不过他不是728的。。是之前的。。。
回复 支持 反对

使用道具 举报

hwd2000 发表于 2017-8-3 01:19:44 | 显示全部楼层
“我和他解释了java里是pass by value的”. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
你这个解释是错误的。如果parameter是object,pass by reference (也就是c里的指针)。显然面试官对你的解释有异议。虽然c#语法可以用ref,但是在不用的情况下,parameter的用法和java是一样的。
回复 支持 反对

使用道具 举报

 楼主| lynlion 发表于 2017-8-3 02:12:25 | 显示全部楼层
hwd2000 发表于 2017-8-3 01:19
“我和他解释了java里是pass by value的”
你这个解释是错误的。如果parameter是object,pass by referenc ...

首先java 永远是pass by value的,传一个object进去也是pass by value的,直接对这个object改变是不会改变原来的object,例如传一个Treenode pre到下一层递归,在里面你执行pre=null,上一层里的pre是不会改变的,只有执行pre.next = null,上一层的pre的next才会改变,这个方法我和他提了,显然不是他想要的
回复 支持 反对

使用道具 举报

newgod2500 发表于 2017-8-3 02:58:56 | 显示全部楼层
最初的梦想2013 发表于 2017-8-2 21:02
这么多三哥三姐啊,看来巨硬也被烙印占领了,亚麻也是乌压压一大片烙印

因为老大们都是印度人。手底下自然一堆三三。。况且巨硬现在ceo本来就是从azure出来的。。。 office, azure是出了名多烙印的。 只能指望一下bing了。
回复 支持 反对

使用道具 举报

hwd2000 发表于 2017-8-3 03:11:25 | 显示全部楼层
lynlion 发表于 2017-8-3 02:12
首先java 永远是pass by value的,传一个object进去也是pass by value的,直接对这个object改变是不会改 ...

你这个解释放到c里面也成立。给你举个例子.鏈枃鍘熷垱鑷1point3acres璁哄潧
void add(int* a) {
   a = NULL;
}

int x = 1;
add(&x);

这个方法执行完了,a现在是啥?当然还是1。要是非要套你那个说法,其实c也是pass by value,为啥?因为地址也是value,直接放在call stack里了。但是没有人认为这是pass by value,因为地址就是地址,不是value。

补充内容 (2017-8-3 03:12):
说错了,是“x现在是啥?”
回复 支持 反对

使用道具 举报

koga 发表于 2017-8-3 03:49:35 | 显示全部楼层
请问你是什么时候投的
是18年毕业么
这么快就有onsite了?
回复 支持 反对

使用道具 举报

snakech 发表于 2017-8-3 03:55:27 | 显示全部楼层
lynlion 发表于 2017-8-3 02:12
首先java 永远是pass by value的,传一个object进去也是pass by value的,直接对这个object改变是不会改 ...

我对这个说法表示异议,有可能是我没理解你的说法,也有可能我一直用的pass reference是假的
回复 支持 反对

使用道具 举报

 楼主| lynlion 发表于 2017-8-3 04:17:24 | 显示全部楼层
hwd2000 发表于 2017-8-3 03:11
你这个解释放到c里面也成立。给你举个例子
void add(int* a) {. from: 1point3acres.com/bbs
   a = NULL;

我建议你好好看看什么叫pass by value 和pass by reference,不懂就不要误导别人,既然说到c++,请你说一下下面这个是pass by value 还是pass by refernce,打印的结果是什么,如何在java 中实现? 鏉ユ簮涓浜.涓夊垎鍦拌鍧.

void addOne(int &y) // y is a reference variable
{
    y = y + 1;
} // y is destroyed here

int main()
{
    int x = 5;
    std::cout << "x = " << x << '\n';
    addOne(x);.1point3acres缃
    std::cout << "x = " << x << '\n';
    return 0;
} 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
回复 支持 反对

使用道具 举报

 楼主| lynlion 发表于 2017-8-3 04:22:37 | 显示全部楼层
snakech 发表于 2017-8-3 03:55
我对这个说法表示异议,有可能是我没理解你的说法,也有可能我一直用的pass reference是假的

java一直是pass by value,你用的pass by reference确实是假的。
. 鍥磋鎴戜滑@1point 3 acres
http://www.geeksforgeeks.org/g-f ... ctly-pass-by-value/
回复 支持 反对

使用道具 举报

hwd2000 发表于 2017-8-3 04:47:28 | 显示全部楼层
lynlion 发表于 2017-8-3 04:17
我建议你好好看看什么叫pass by value 和pass by reference,不懂就不要误导别人,既然说到c++,请你说一 ...

我要承认,我的c++的知识已经丢的差不多了。你的例子才是真正的pass by reference。但是说到java,你硬要说java不能pass by reference,我就只能用以下你的c++代码对应java的实现来回复你(当然还有其它更优雅的实现)。你要怎么坚持是你自己的事情,但是未必能被别人认同,因为这个话题从Java诞生开始一直都没讨论完。
    private static void addOne(int[] a) {. Waral 鍗氬鏈夋洿澶氭枃绔,
        a[0]++;
    }. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴

     public static void main(String []args){
         int[] x = {10};
         addOne(x);
         System.out.println("x=" + x[0]);
     }
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

custom counter

GMT+8, 2017-9-23 15:48

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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