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


一亩三分地论坛

 找回密码
 获取更多干活,快来注册
Babeltime游戏工作室招工程师、美术和策划
Tubi TV招安卓、前端和机器学习工程师
把贵司招聘信息放这里
查看: 9178|回复: 33
收起左侧

WePay Code Challenge

[复制链接] |试试Instant~ |关注本帖
悲伤网管 发表于 2015-8-19 02:31:45 | 显示全部楼层 |阅读模式

2015(7-9月) 码农类 硕士 全职@WePay - 网上海投 - 在线笔试 |Otherfresh grad应届毕业生

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

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

x
官网投的WePay,大约三天后收到code challenge

题目还是
. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
实现hashmap 和 两道选择题

Hashmap用generic array通不过,要用ArrayList保存头节点才行. Waral 鍗氬鏈夋洿澶氭枃绔,
. more info on 1point3acres.com
(int + long) * (double + float) 之后得到的变量的类型double?
.1point3acres缃
不正确的注释方式是   选 C?
// /* comment // // comment */
/* comment *** */. 鐗涗汉浜戦泦,涓

补充内容 (2015-8-19 02:32):
怎么少了两个选项

/* comment /* comment */*/
/* comment // comment */

评分

3

查看全部评分

Zeratul 发表于 2015-9-18 11:25:15 | 显示全部楼层
readman 发表于 2015-9-11 04:40
public void put(K key, V value) {
        if (key == null)
            throw new NullPointerExcep ...

还是有些问题,帮你改了下:
  1. public void put(K key, V value) {. 鍥磋鎴戜滑@1point 3 acres
  2.         if (key == null)
  3.             throw new NullPointerException("null of key is not allowed");
  4.         int index = key.hashCode() % size;
  5.         if (ary.get(index) == null){
  6.             ary.set(index, new LinkedList<Entry<K, V>>());
  7.             ary.get(index).add(new Entry<K, V>(key, value));
  8.         }else{
  9.             LinkedList<Entry<K, V>> list = ary.get(key.hashCode() % size);
  10.             Iterator<Entry<K, V>> iterator = list.iterator();
  11.             while (iterator.hasNext()) {
  12.                 Entry<K, V> e = iterator.next();
  13.                 if (e.key.equals(key)) {
  14.                     e.value = value;
  15.                     return;
  16.                 }
  17.             }.鐣欏璁哄潧-涓浜-涓夊垎鍦
  18.             list.add(new Entry<K, V>(key, value));
  19.         }


  20.     }
复制代码
回复 支持 1 反对 0

使用道具 举报

 楼主| 悲伤网管 发表于 2015-8-19 02:33:53 | 显示全部楼层
有两个选项乱码了,全选页面可以看到
回复 支持 反对

使用道具 举报

readman 发表于 2015-8-20 03:04:50 | 显示全部楼层
悲伤网管 发表于 2015-8-19 02:33
有两个选项乱码了,全选页面可以看到
. more info on 1point3acres.com
wepay 同楼主一样...居然没过oa, 不知道为啥..
我还自己写了复杂度分析- -
回复 支持 反对

使用道具 举报

 楼主| 悲伤网管 发表于 2015-8-20 03:25:43 | 显示全部楼层
readman 发表于 2015-8-20 03:04
wepay 同楼主一样...居然没过oa, 不知道为啥..
我还自己写了复杂度分析- -

过了test case应该就没问题啊
回复 支持 反对

使用道具 举报

readman 发表于 2015-8-20 04:00:19 | 显示全部楼层
悲伤网管 发表于 2015-8-20 03:25
过了test case应该就没问题啊

过了啊...不过怎么敢提交 - -
你code里写rehash和load factor了么?
回复 支持 反对

使用道具 举报

 楼主| 悲伤网管 发表于 2015-8-20 04:26:32 | 显示全部楼层
readman 发表于 2015-8-20 04:00
过了啊...不过怎么敢提交 - -
你code里写rehash和load factor了么?

没有吧,我用linked list处理的collision
回复 支持 反对

使用道具 举报

readman 发表于 2015-8-20 04:33:25 | 显示全部楼层
悲伤网管 发表于 2015-8-20 04:26
没有吧,我用linked list处理的collision

- - 那应该一样啊...好吧 唉..
回复 支持 反对

使用道具 举报

readman 发表于 2015-8-20 05:05:04 | 显示全部楼层
public class myHashTable<K, V> {
    class Entry<K, V> {
        public Entry(K key, V value) {
            this.key = key;
            this.value = value;
        }.鐣欏璁哄潧-涓浜-涓夊垎鍦

        K key;
        V value;. more info on 1point3acres.com
    }
. 1point3acres.com/bbs
    private int size = 1000;
    private ArrayList<LinkedList<Entry<K, V>>> ary = new ArrayList<>(size);
-google 1point3acres
    public myHashTable(int size) {
        this.size = size;
        for (int i = 0; i < size; i++) {
            ary.add(i, null);
        }
    }

    public void put(K key, V value) {
        if (key == null)
            throw new NullPointerException("null of key is not allowed");.鏈枃鍘熷垱鑷1point3acres璁哄潧
        if (ary.get(key.hashCode() % size) == null)
            ary.add(key.hashCode() % size, new LinkedList<Entry<K, V>>());
        ary.get(key.hashCode() % size).add(new Entry<K, V>(key, value));. 1point3acres.com/bbs
    }. 1point3acres.com/bbs

    public V get(K key) {
        if (key == null)
            throw new NullPointerException("null of key is not allowed");
        if (ary.get(key.hashCode() % size) == null)-google 1point3acres
            return null;
        else {
            LinkedList<Entry<K, V>> res = ary.get(key.hashCode() % size);
            Iterator<Entry<K, V>> iterator = res.iterator();
            while (iterator.hasNext()) {. Waral 鍗氬鏈夋洿澶氭枃绔,
                Entry<K, V> e = iterator.next();
                if (e.key.equals(key))
                    return e.value;
            }
            return null;
        }
    }
. from: 1point3acres.com/bbs
    public static void main(String[] args) { 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
        myHashTable<String, String> m = new myHashTable<>(1000);
        m.put("abc", "eee");. visit 1point3acres.com for more.
        m.put("abc", "bbb");
        System.out.println(m.get("abc"));
    }
} 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
- - 我大概这么写的, 很弱的hashmap 因为只有30分钟, 我浏览器还死机了一次唉
回复 支持 反对

使用道具 举报

 楼主| 悲伤网管 发表于 2015-8-20 05:22:01 | 显示全部楼层
readman 发表于 2015-8-20 05:05
public class myHashTable {
    class Entry {
        public Entry(K key, V value) {

比我写的好多了     
回复 支持 反对

使用道具 举报

lx051068 发表于 2015-8-20 05:33:34 | 显示全部楼层
同样做了,HR发了个邮件约了个时间要给我打电话。。。不知道是要聊技术的还是HR面。。。
回复 支持 反对

使用道具 举报

 楼主| 悲伤网管 发表于 2015-8-20 05:46:45 | 显示全部楼层
lx051068 发表于 2015-8-20 05:33
同样做了,HR发了个邮件约了个时间要给我打电话。。。不知道是要聊技术的还是HR面。。。

就是介绍一下面试流程和公司吧
回复 支持 反对

使用道具 举报

lx051068 发表于 2015-8-20 06:02:09 | 显示全部楼层
悲伤网管 发表于 2015-8-20 05:46
就是介绍一下面试流程和公司吧
. 1point 3acres 璁哄潧
你已经打过电话了吗?下次应该就是On site 面试了把。。。
回复 支持 反对

使用道具 举报

cao123 发表于 2015-8-20 06:07:12 | 显示全部楼层
lx051068 发表于 2015-8-20 06:02
你已经打过电话了吗?下次应该就是On site 面试了把。。。

你们所说的hr发邮件,打电话是哪个岗位的?是software engineer tools还是software engineer?
回复 支持 反对

使用道具 举报

 楼主| 悲伤网管 发表于 2015-8-20 06:07:30 | 显示全部楼层
lx051068 发表于 2015-8-20 06:02
你已经打过电话了吗?下次应该就是On site 面试了把。。。

. Waral 鍗氬鏈夋洿澶氭枃绔,还没,肯定还有电面啊
回复 支持 反对

使用道具 举报

lx051068 发表于 2015-8-20 06:14:14 | 显示全部楼层
悲伤网管 发表于 2015-8-20 06:07. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
还没,肯定还有电面啊

哦哦哦,恩,我以为都没电面了。。。。
那到时候电面还可以再交流一下
回复 支持 反对

使用道具 举报

cu0817 发表于 2015-8-20 06:27:11 | 显示全部楼层
请问LZ投哪个职位呀?
回复 支持 反对

使用道具 举报

 楼主| 悲伤网管 发表于 2015-8-20 06:38:26 | 显示全部楼层
cu0817 发表于 2015-8-20 06:27
请问LZ投哪个职位呀?

不记得了,linked in上看到的
回复 支持 反对

使用道具 举报

readman 发表于 2015-8-20 07:14:44 | 显示全部楼层

哭晕在床上...
回复 支持 反对

使用道具 举报

yawnzh 发表于 2015-8-23 07:43:31 | 显示全部楼层
这个题没有要求delete和iterate操作是吗?
回复 支持 反对

使用道具 举报

storm_hair 发表于 2015-8-23 08:35:47 | 显示全部楼层
不能用C++么
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

custom counter

GMT+8, 2017-9-21 15:15

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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