一亩三分地论坛

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

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

Zenefits OA + phone + Skype

[复制链接] |试试Instant~ |关注本帖
cuiyang36 发表于 2015-4-18 01:37:19 | 显示全部楼层 |阅读模式

2015(4-6月) 码农类 硕士 全职@Zenefits - 网上海投 - 技术电面 |Otherfresh grad应届毕业生

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

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

x
      看来这是楼主第一次发帖啊,之前在网上海投了zenefits这家公司,听说他家最近招人很猛,但bar也比较高。海投了不到两天了吧收到了zen 3的网上测试,于是就去做了,题目不是很难:
     (1)good node,这道题主要考察的是对图的理解,题目是:http://www.careercup.com/question?id=5840928073842688,另外在此谢谢dhldxy同学帖子的帮助。
我的解法是建立两个HashMap, 第一个HashMap<Integer, Integer> 记录的是节点号至组号的映射,就拿链接里面那个测试例子来说吧,最开始的时候应该是1 ->1, 2 ->2, 3 -> 3, 4 -> 4, 5 -> 5。
第二个HashMap<Integer, List<Integer>>记录的是组号至节点list的映射,初始化后应为:1 ->[1], 2 ->[2], 3 -> [3], 4 -> [4], 5 -> [5] 然后在不断地输入中更新这两个HashMap,融合不同的组,
更新节点对应的组号。比如说输入出现了 3 -> 4,这时第一个HashMap应该更新为:1 ->1, 2 ->2, 3 -> 4, 4 -> 4, 5 -> 5,第二个HashMap应该更新为:1 ->[1], 2 ->[2],4 -> [4, 3], 5 -> [5]。
所以所有输入结束后答案应为组数减一,即为第二个HashMap的size - 1。
     (2)股票那道题, 题目是:https://www.hackerrank.com/challenges/stockmax,这题感觉重要的一点是反向traverse,记录最大值。正向traverse例如buy and sell stock这种题我们做多了容易
出现思维定势。
. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴



      后来online test完了呢就约了电面,电面的题目是那道number of island,leetcode上面有,但我当时面的时候leetcode这道题似乎还没有加进去呢,这题我建议用python做,因为在maintain visited
这个HashSet的时候python可以直接往里面扔tuple,也就是坐标例如(1, 1),(2, 3),Java的话我觉得只能往里面扔转化后的index,例如length为5的matrix,(1, 1) -> 1 * 5 + 1 = 6,把6扔到
HashSet中。这样可能不太方便尤其在做DFS或者BFS的时候。做完题后聊了聊,他说最近公司扩张太快,但节奏有点跟不上,manager和下面的人交流有障碍,不是software engineer推动产品而是PM在推动
产品,这种模式让他非常confusing。


. more info on 1point3acres.com

      接着约了第一轮Skype coding exercise, 题目大概是这样的:


有一个String输入,其实是一个sentence, 例如“I want to buy a cup of water” 输出为 “I wnat to buy a cup of wtear”


.鏈枃鍘熷垱鑷1point3acres璁哄潧意思是对于句子中的每个单词,例如water, 最边上两个char不能变,内部的char要随机排列重组,也就是说需要写一个random word combination的函数,public String helper(String s), 输出随机排列出来的word。
由于楼主对于Java Random模块不太熟悉,写出了O(n ^ 2)的解法,但他的要求是O(n),各位可以想一想怎么随机排列内部这些char以达到O(n)的解法。后来我一想这不行啊,题没做出来要挂啊,马上反转上去和他交流,问他们组的状况,他工作如何,有什么challenging,我和他说我有前端开发经验,比如Django和JS,问了半天他眼前终于亮了,他说我们公司就用Django, python和JS,你有过开发前端server的project吗?给我讲一个,我就详细地讲了一个当时Django做的project,还讲了MVC和一些tricky things,他很满意,但他说注意为后期的模块分离做准备,比如现在zenefits已经把前端拆分的很细了,也就是view的那块完全细化了,我连忙附和点赞。后来第二天HR告诉过了,说要进行第二轮。

      之前听说有的大神面了七轮这是真的吗?那这战线得拉的多长啊。另外求米求米啊,已经没法搜索了,谢谢大家!
来自群组: CMU

补充内容 (2015-4-17 12:40):.鐣欏璁哄潧-涓浜-涓夊垎鍦
清无视格式吧 - -

评分

7

查看全部评分

本帖被以下淘专辑推荐:

proron 发表于 2015-4-18 02:24:43 | 显示全部楼层
可以假设所有char就是a到z?这样就可以big n,类似word ladder2的解法。
回复 支持 反对

使用道具 举报

proron 发表于 2015-4-18 02:27:50 | 显示全部楼层
proron 发表于 2015-4-18 02:24
可以假设所有char就是a到z?这样就可以big n,类似word ladder2的解法。

错了,请问O(n^2)的思路。
回复 支持 反对

使用道具 举报

 楼主| cuiyang36 发表于 2015-4-18 02:28:31 | 显示全部楼层
proron 发表于 2015-4-17 13:24. from: 1point3acres.com/bbs
可以假设所有char就是a到z?这样就可以big n,类似word ladder2的解法。

可以假设所有char是a到z,能说一下具体做法吗?
回复 支持 反对

使用道具 举报

 楼主| cuiyang36 发表于 2015-4-18 02:32:30 | 显示全部楼层
proron 发表于 2015-4-17 13:27
错了,请问O(n^2)的思路。

这是我当时写的,用while loop作为外循环,用for loop一遍一遍的扫,用status array记录状态.1point3acres缃

private String helper(String s){
    if (s.length() < 4){
        return s;
    }
    boolean[] status = new boolean[s.length() - 2];
    StringBuffer sb = new StringBuffer();
    sb.append(s.charAt(0));
    while (sb.length() < s.length() - 1){
        for (int i = 1; i < s.length() - 1; i++){
            if (new Random().nextInt(2) == 1 && status[i - 1] == false){
                sb.append(s.charAt(i));
                status[i - 1] = true;. 鍥磋鎴戜滑@1point 3 acres
            }
        }
    }
   
    sb.append(s.charAt(s.length() - 1));
    return sb.toString();. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
}
. 鍥磋鎴戜滑@1point 3 acres
public String getRandomString(String s){
    if (s == null || s.length() < 1){
        return s;
    }
    StringBuffer rst = new StringBuffer();
    String[] array = s.split(" ");
    for (String string: array){
        rst.add(helper(string) + " ");
    }
    return rst.toString().trim();. more info on 1point3acres.com
}
回复 支持 反对

使用道具 举报

liushen 发表于 2015-4-18 03:16:26 | 显示全部楼层
这不是很经典的数组打乱排序的问题嘛。。。
回复 支持 反对

使用道具 举报

 楼主| cuiyang36 发表于 2015-4-18 04:08:53 | 显示全部楼层
liushen 发表于 2015-4-17 14:16
这不是很经典的数组打乱排序的问题嘛。。。

请问能提供一下解法么?
回复 支持 反对

使用道具 举报

hos1999 发表于 2015-4-18 06:13:59 | 显示全部楼层
感谢分享!同求random string O(n) 解法
回复 支持 反对

使用道具 举报

houqingniao 发表于 2015-4-18 09:11:40 | 显示全部楼层
perfect shuffle~~
回复 支持 反对

使用道具 举报

zhh1991 发表于 2015-4-19 01:49:31 | 显示全部楼层
谢谢LZ分享 把helper改一下 把string改成char[]. 假设word长度为k. 然后Random一个0和k-3之间的一个数r. 把word[r]和word[k-3]对调。接着generate一个一个0和k-4之间的一个数r,把word[r]和word[k-4]对调。重复直到结束。
回复 支持 反对

使用道具 举报

 楼主| cuiyang36 发表于 2015-4-19 05:00:34 | 显示全部楼层
zhh1991 发表于 2015-4-18 12:49
谢谢LZ分享 把helper改一下 把string改成char[]. 假设word长度为k. 然后Random一个0和k-3之间的一个数r. 把 ...

哦我明白了,好方法
回复 支持 反对

使用道具 举报

xieqilu1989 发表于 2015-4-21 02:50:23 | 显示全部楼层
楼主,想问一下电面和Skype coding exercise有什么区别啊?
回复 支持 反对

使用道具 举报

 楼主| cuiyang36 发表于 2015-4-21 06:12:37 | 显示全部楼层
xieqilu1989 发表于 2015-4-20 13:50
楼主,想问一下电面和Skype coding exercise有什么区别啊?

我觉得其实没什么区别吧,都是做题,SKYPE他也不把摄像头打开,其实就和电面一样
回复 支持 反对

使用道具 举报

xieqilu1989 发表于 2015-4-21 10:22:59 | 显示全部楼层
cuiyang36 发表于 2015-4-21 06:12
我觉得其实没什么区别吧,都是做题,SKYPE他也不把摄像头打开,其实就和电面一样

噢,明白了,那就基本完全一样了,我本来以为skype要开摄像头的
回复 支持 反对

使用道具 举报

 楼主| cuiyang36 发表于 2015-4-21 11:20:40 | 显示全部楼层
xieqilu1989 发表于 2015-4-20 21:22
噢,明白了,那就基本完全一样了,我本来以为skype要开摄像头的

我当时面的时候没有开,我觉得如果只是做题的话应该开不开无所谓了
回复 支持 反对

使用道具 举报

王者无敌Alex 发表于 2015-4-23 22:13:05 | 显示全部楼层
楼主清楚他家的流程吗?我是没有电面,直接skype,说是要三轮,之后呢。。。莫非还要onsite
回复 支持 反对

使用道具 举报

 楼主| cuiyang36 发表于 2015-4-24 03:39:25 | 显示全部楼层
cuiyang36 发表于 2015-4-20 22:20
我当时面的时候没有开,我觉得如果只是做题的话应该开不开无所谓了

不太清楚啊,不是说skype七轮的也有么。。。。。。
回复 支持 反对

使用道具 举报

faye_roll 发表于 2015-4-24 04:36:16 | 显示全部楼层
LZ 他们家大概多久会有回复?上周五面完一直没消息的说。。。
回复 支持 反对

使用道具 举报

 楼主| cuiyang36 发表于 2015-4-26 01:44:06 | 显示全部楼层
faye_roll 发表于 2015-4-23 15:36
LZ 他们家大概多久会有回复?上周五面完一直没消息的说。。。
. Waral 鍗氬鏈夋洿澶氭枃绔,
第二天吧,pass的话应该很快地
回复 支持 反对

使用道具 举报

monsterhunter 发表于 2015-4-28 11:53:50 | 显示全部楼层
cuiyang36 发表于 2015-4-18 02:32
这是我当时写的,用while loop作为外循环,用for loop一遍一遍的扫,用status array记录状态. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
. 鍥磋鎴戜滑@1point 3 acres
private  ...

请问 楼主 Random().nextInt(2) == 1 是指有一半几率 这个char 会被选中么? 那越往后的char被这个位置选中的概率不就越小?
回复 支持 反对

使用道具 举报

本版积分规则

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

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

关闭

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

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

custom counter

GMT+8, 2016-12-5 04:52

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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