📣 独立日限时特惠: VIP通行证立减$68
楼主: 匿名
跳转到指定楼层
上一主题 下一主题
收起左侧

字节北美电面两题

🔗
JoyForce 2021-1-1 08:54:54 | 只看该作者
全局:
本帖最后由 JoyForce 于 2020-12-31 16:57 编辑
markbs123 发表于 2020-12-31 16:14
这样写不会有错么,会一直死循环的啊,求大大指正

我直接copy上一个帖子的代码,只改了left 和right,没仔细看,我又改了一下(不会写python,可能有语法错误):

  1. result = -1;
  2. while left <= right:
  3.      mid = (left + right) / 2
  4.      if interval[mid][0] <= target <= interval[mid][1]:
  5.           left = mid + 1
  6.           result = mid
  7.      else:
  8.            right =  mid - 1
  9.     return result == -1 ? null : interval[result]
复制代码
回复

使用道具 举报

🔗
markbs123 2021-1-1 09:14:59 | 只看该作者
全局:

劳烦大大能不能给下题号,感谢感谢
回复

使用道具 举报

🔗
markbs123 2021-1-1 09:17:07 | 只看该作者
全局:
woshiduga 发表于 2020-12-26 08:47
第一题应该先排序 然后对每个 数进行binary search,
[mw_shl_code=python,true]while left < right:
    ...

大大能不能多解释一下,sort的时候是按start 升序,end 降序排列的? 还有这样二分得到的结果貌似不对啊
回复

使用道具 举报

🔗
woshiduga 2021-1-1 09:31:01 | 只看该作者
全局:
markbs123 发表于 2021-1-1 09:17
大大能不能多解释一下,sort的时候是按start 升序,end 降序排列的? 还有这样二分得到的结果貌似不对啊

因为fully covered或者disjoint
比如
[2, 10]
[3, 7],[6, 10]这种,target是5,利用二叉搜索找到满足条件的最左边的interval [3, 7],这样肯定得到的range最小啊
回复

使用道具 举报

🔗
markbs123 2021-1-1 09:32:49 | 只看该作者
全局:
JoyForce 发表于 2021-1-1 08:54
我直接copy上一个帖子的代码,只改了left 和right,没仔细看,我又改了一下(不会写python,可能有语法错 ...

感谢大大回我,但我还是有一个问题,如果所有的区间是fully overlapped, 二分是可以的,但楼主给的题目里用例是[[2,3],[2,5],[1,8],[1,18],[20,25]], [20, 25]是exclusive的,二分应该是不行,想来想去貌似只有构建Segment Tree的办法了,想听听大大的建议,感谢感谢
回复

使用道具 举报

🔗
markbs123 2021-1-1 09:36:11 | 只看该作者
全局:
woshiduga 发表于 2021-1-1 09:31
因为fully covered或者disjoint
比如
[2, 10]

感谢感谢,二分如果是全部intervals fully overlapped 没问题,但如果有disjoint的话,就好像不行,大大怎么看
回复

使用道具 举报

全局:
第一题nlogn中的N指啥挺重要的。。。numbers的长度如果是常数的话对于numbers的每个数循环一遍interval就行了最后出来是O(n)?
回复

使用道具 举报

🔗
woshiduga 2021-1-1 10:10:17 | 只看该作者
全局:
markbs123 发表于 2021-1-1 09:36
感谢感谢,二分如果是全部intervals fully overlapped 没问题,但如果有disjoint的话,就好像不行,大大 ...

不fully covered 我觉得就只能暴力,因为题目要求 并且说lgn
回复

使用道具 举报

🔗
quanatm 2021-1-1 10:59:27 | 只看该作者
全局:
nlogn, sort 一次 然后 便利一次

回复

使用道具 举报

🔗
OutOfTheWoods 2021-3-27 08:15:02 | 只看该作者
全局:
问一下lz一般聊天的话是什么内容呀,项目吗,还是行为面试啊,谢谢!
回复

使用道具 举报

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

本版积分规则

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