《数据科学面试40+真题讲解》,K神本年度最后一次开课


一亩三分地论坛

 找回密码
 Sign Up 注册获取更多干货
码农求职神器Triplebyte:
不用海投,内推你去多家公司面试
Airbnb 数据科学职位
in analytics and inference
天天打游戏、照样领工资,
你要不要来?
把贵司招聘信息放这里
查看: 1451|回复: 0
收起左侧

Uber 电面

[复制链接] |试试Instant~ |关注本帖
douya 发表于 2015-10-21 23:45:08 | 显示全部楼层 |阅读模式

2015(10-12月) 码农类 硕士 全职@Uber - 内推 - 技术电面 |Failfresh grad应届毕业生

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

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

x

设计个结构,存key,time,value
要insert(key,time,value)和get(key),get(key,time)
get(key)的时候,要是一个key有好几个time,那么返回过去最近的那个
get(key,time) 就是返回过去离time最近的那个。

看过面经,我就说用treemap。。。他说你用bst,写一个呗。。。code半天一推bug,跪了

这是全是bug的代码,可能设计的也不好。大家随便看看吧
class Solution {
. visit 1point3acres.com for more.   12, 'loc2'
10, 'loc1'
15, 'loc3'


10 = 'loc1' 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
14 = 'loc2'
  public static void main(String[] args) {


    MyTree mt = new MyTree();
    mt.insert(12,loc2,mt);
    mt.insert(10,loc1,mt);. From 1point 3acres bbs
    mt.insert(15,loc3,mt);. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
    System.out.println(mt.get(10,mt.root));. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
    System.out.println(mt.get(14,mt));
  }




  class MyTreeNode{
    MyTreeNode left;
    MyTreeNode right;. From 1point 3acres bbs
    int key;
    String val;
    public MyTreeNode(int key, String val){
      this.val = val;
      this.key = key;
    }. more info on 1point3acres.com
  }

  class MyTree{
    MyTreeNode root; 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
    public MyTree(){
. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷      root=null;
    }
    public void insert(int time, String loc,MyTreeNode node){. 1point3acres.com/bbs
      if(node==null){
        node = new MyTreeNode(time,loc);
      } else {. 鍥磋鎴戜滑@1point 3 acres
        if(root.keytime){
          insert(time,loc,root.left);. From 1point 3acres bbs
        } else{
          insert(time,loc,root.right);. more info on 1point3acres.com
        }. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
      }
    }. 鍥磋鎴戜滑@1point 3 acres

    MyTreeNode pre = null;
    public String get(int time, MyTreeNode node){
      if(node==null) return not found;
      if(time==node.key) return node.val;
      if(timenode.key){
        if(node.right==null) return node.val;. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
        pre = node.val;
        return get(time,node.right);
      } else {
        if(node.left==null) {.鏈枃鍘熷垱鑷1point3acres璁哄潧
          if(pre==null) return not found;
          return pre.val;
        }
        return get(time,node.left);
      }
. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
    }
  }

}


评分

1

查看全部评分

本版积分规则

关闭

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

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

custom counter

GMT+8, 2017-11-19 00:03

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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