回复: 13
收起左侧

TikTok电面跪经

本楼:   👍  0
0%
0%
0   👎
全局:   1307
98%
2%
23

2022(4-6月) 码农类General 硕士 全职@字节跳动 - 猎头 - 技术电面  | 😐 Neutral 😐 Average | Fail | 在职跳槽

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

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

x
本帖最后由 420402033 于 2022-5-4 12:21 编辑

上个月面的字节ads组,
您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限查看其他获取积分的方式
断但是不知道怎么应用到descending的情况。。不知道各位有没有什么好的思路呢

上一篇:亚麻NG 三轮vo挂经
下一篇:关于offer-选组-正式offer的时间线问题
immikiya12 2022-5-18 05:23:48 | 显示全部楼层
本楼:   👍  4
100%
0%
0   👎
全局:   137
98%
2%
3
最坏情况应该是O(n),如果一个数组所有元素都一样或者只有一个是target,那么肯定无法二分。

平均Log复杂度的话就是比较首中尾三个值 (L, M, R)
if L > R -> M在两者中间则单调下降无shift,否则是shift升序
if L < R -> M在两者中间则单调上升无shift,否则是shift降序
if L = R -> 则首尾同时向里平移一位,这里就是为什么最坏会退化成O(n)

评分

参与人数 1大米 +1 收起 理由
420402033 + 1 很有用的信息!

查看全部评分

回复

使用道具 举报

Jing12345 2022-5-16 07:47:49 | 显示全部楼层
本楼:   👍  0
0%
0%
0   👎
全局:   228
97%
3%
6
420402033 发表于 2022-5-15 15:16
去重不是直接O(n)了吗。。
不过第二个点好,二分搜索的时候可以对descending的取负,这样二分完全不用改

我说的先去重是首尾去重,用来判断ascending和descending的。虽然这个有可能会O(n),但是你在二分过程中去重最差也得O(n)。不过我也不确定是不是可以这样做。还有更好的方法可以判断递增减吗?
扫码关注一亩三分地求职移民公众号
更多干货内容等你发现
回复

使用道具 举报

本楼:   👍  0
0%
0%
0   👎
全局:   3
100%
0%
0
可以透露一下什么题吗?没米看不到😀
回复

使用道具 举报

 楼主| 420402033 2022-5-7 01:38:33 | 显示全部楼层
本楼:   👍  0
0%
0%
0   👎
全局:   1307
98%
2%
23
joey.zh.cn 发表于 2022-5-6 09:20
可以透露一下什么题吗?没米看不到😀

咦奇怪我没有设大米限制啊。

--> 题目是利抠靶依的变种,增加了两个限制要求,第一个是必须要在O(logN)完成,第二个是不知道原来array是ascending还是descending
回复

使用道具 举报

jianpanxia 2022-5-11 13:17:10 | 显示全部楼层
本楼:   👍  0
0%
0%
0   👎
全局:   741
95%
5%
40
应该就先比较两个数,确定是升序还是降序。然后在二分搜
回复

使用道具 举报

 楼主| 420402033 2022-5-11 16:42:19 | 显示全部楼层
本楼:   👍  0
0%
0%
0   👎
全局:   1307
98%
2%
23
jianpanxia 发表于 2022-5-10 22:17
应该就先比较两个数,确定是升序还是降序。然后在二分搜

具体怎么做比较呢?因为你可能正好选到断点,导致判断相反
回复

使用道具 举报

本楼:   👍  0
0%
0%
0   👎
全局:   6
100%
0%
0
420402033 发表于 2022-5-11 16:42
具体怎么做比较呢?因为你可能正好选到断点,导致判断相反

比较头和尾?
回复

使用道具 举报

 楼主| 420402033 2022-5-11 17:36:39 | 显示全部楼层
本楼:   👍  0
0%
0%
0   👎
全局:   1307
98%
2%
23

有道理,想了一下可以头尾各比三个数,
如果两组一致就可以统一判断升序还是降序,如果不一致那一定一边有断点,就可以通过没有断点的那一侧判断。
如果size<5直接遍历,因为可能会出现两边都有断点ie. [3,4,1,2]
回复

使用道具 举报

英伦十六世纪 2022-5-12 14:11:07 | 显示全部楼层
本楼:   👍  0
0%
0%
0   👎
全局:   3270
92%
8%
278
420402033 发表于 2022-5-11 02:36
有道理,想了一下可以头尾各比三个数,
如果两组一致就可以统一判断升序还是降序,如果不一致那一定一边 ...

如果数组中的数字可以有重复,那这个方法看起来不太行。应该比较首、尾、中三个数。
回复

使用道具 举报

 楼主| 420402033 2022-5-12 17:45:01 | 显示全部楼层
本楼:   👍  0
0%
0%
0   👎
全局:   1307
98%
2%
23
英伦十六世纪 发表于 2022-5-11 23:11
如果数组中的数字可以有重复,那这个方法看起来不太行。应该比较首、尾、中三个数。

有道理!但是如果只对比首尾中,那万一shift之后首尾一样好像也没法判断?比如2223122
回复

使用道具 举报

地里匿名用户
匿名用户-WXYZY  2022-5-15 12:58:09
本楼:   👍  0
0%
0%
0   👎
面试官比较坑,这种好歹让你先写一下吧
回复

使用道具 举报

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

本版积分规则

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