字节跳动2023秋招提前批面经

2023-07-19  本文已影响0人  景知育德

意向岗位:后端开发工程师 2023年秋招
2023年7月20日晚

以下是面试的主要提纲,凭回忆

自我介绍

我说了学历、主要项目经历、实习经历

实习

实习干了什么工作、在什么背景下解决了什么问题、觉得难点在哪

项目

就是让我介绍我的项目,从背景,到开发过程,我全聊了一遍。面试官顺便问了数据库

基础知识

操作系统

计算机网络

数据库

其实刚刚说项目经历时说过一次了。面试官又问了几个问题:

中间件

算法题

一道算法题,现场告诉你题目的内容。写出可以运行的伪代码(因为没有测试用例,我自己测试了几遍。)
如果是正式的机考题,应该有很多边界用例,会很麻烦。我就写了一个能覆盖大多数用例的代码,边界条件的地方就写了注释没去考虑。面试官说可以了。

题目是:
输入一个数字数组,形如

12  13  14  15  18  19  1  3  5  5  6  6  7  8  9  10

可以看作一个连续递增可重复的序列,从中间切断,再拼接得到的。
请问如何找到这个数组的中位数。

思路是找到切断点,可以用二分查找,在 O(\log n) 的时间复杂度里找到。我的代码也如此。不过我和面试官简要讨论特殊情形:

  1. 所有的数字都一样
  2. 数组没有被切断(面试官说可以没有切断),就是递增序列
    对于第二个特殊情形,我只做了一个简单的判断,没有严格判断。
上一篇 下一篇

猜你喜欢

热点阅读