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

IXL Learning Phone interview 面经

全局:

2018(7-9月) 码农类General 硕士 全职@ - 网上海投 - 技术电面  | | Other | 应届毕业生

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

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

x
刚面完IXL phone interview, 是个中国小哥, 人很好,问了两道题。
第一道题 generate random Fibonacci num
您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限 或 查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
rn 6, 1 / 11 = 0.090909 return 09;
  1. public int generate(int n){
  2.      if (n <= 1) return 1;
  3.      List<Integer> res = new ArrayList<>();
  4.      res.add(1);
  5.      res.add(1);
  6.      int i = 1;
  7.      while (res.get(i) <= n){
  8.            i++;
  9.            res.add(res.get(i - 1) +res.get(i - 2));
  10.      }
  11.      Random rd = new Random();
  12.      return res.get(rd.nextInt(i));
  13. }

  14. public String generate (int n){
  15.      long rem = 1;
  16.      StringBuilder sb = new StringBuilder();
  17.      Map<Long, Integer> map = new HashMap<>();
  18.      while (rem != 0){
  19.           if (map.containsKey(rem)) {
  20.                return sb.toString().substring(map.get(rem));
  21.           } else {
  22.                map.put(rem, res.length());
  23.                rem *= 10;
  24.                res.append(rem / n);
  25.                rem %= n;
  26.           }
  27.      }
  28.      return "0";
  29. }
复制代码

评分

参与人数 7大米 +25 收起 理由
xh_pku + 5 LZ实在人!
Urumic + 2 给你点个赞!
zhuyingcau + 3 给你点个赞!
北极猪一只 + 5 给你点个赞!
ZixiaoLi + 5 给你点个赞!

查看全部评分


上一篇:Grubhub
下一篇:脸书店面

本帖被以下淘专辑推荐:

推荐
qwqw 2018-2-5 14:20:21 | 只看该作者
全局:
斐波那契那道题 LZ的解法不是空间最优, 面试官想强行挑刺的话, 还是可以fail掉的
回复

使用道具 举报

🔗
 楼主| kael1218 2017-10-17 10:28:35 | 只看该作者
全局:
遇到原题的同学不要直接复制code哦!谢谢
回复

使用道具 举报

🔗
FruitSon 2017-10-18 03:52:41 | 只看该作者
全局:
今天刚收到邮件约了这周四的电面,lz能不能加一下我微信(私信给您了)...想再问一下电面
回复

使用道具 举报

🔗
Urumic 2018-1-29 07:32:45 | 只看该作者
全局:
请问楼主斐波那契那道题有没有follow up呢?谢谢楼主啦!
回复

使用道具 举报

🔗
 楼主| kael1218 2018-2-6 01:39:07 | 只看该作者
全局:
Urumic 发表于 2018-1-29 07:32
请问楼主斐波那契那道题有没有follow up呢?谢谢楼主啦!

没有哈, 直接就过了
回复

使用道具 举报

🔗
MacJordan 2018-10-26 03:54:05 | 只看该作者
全局:
qwqw 发表于 2018-2-5 14:20
斐波那契那道题 LZ的解法不是空间最优, 面试官想强行挑刺的话, 还是可以fail掉的

请问下这题怎么优化空间呢,从1到n,去二叉找第m个斐波那契数小于等于n,然后从random.nextInt(m)去随机生成一个斐波那契数? 请教一下。。
回复

使用道具 举报

🔗
Jonnyzhang 2018-11-30 02:58:03 | 只看该作者
全局:
写了一个第一题的方法。我是用一个包含2个元素的int[] 来储存前两个元素,随着运算次数动态更新,是每一次1位置的都是最新的。然后维护一个count来记录下一共计算了多少个值,从而计算取到的概率,参考就是蓄水池方法。请大家指教哈~

  1. public static int generate(int n){
  2.                 if(n < 1) return 0;
  3.                 int count = 1, res = 0;
  4.                 int[] f = new int[2];
  5.                 f[0] = 0; f[1] = 1;
  6.                 Random r = new Random();
  7.                 while(f[1] <= n){
  8.                         if(r.nextInt(count) == 0) res = f[1];
  9.                         int t = f[0];
  10.                         f[0] = f[1];
  11.                         f[1] = f[0] + t;
  12.                         count++;
  13.                 }
复制代码
回复

使用道具 举报

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

本版积分规则

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