面试复盘 | 字节凉经

一面

  • Select/poll/epoll 区别 原理  大概是数量限制、数据结构和存取复杂度不同
  • epoll的边缘触发和水平触发
  • print(&x)输出的是什么地址(实际地址还是虚拟地址)  答了虚拟地址
  • 虚拟地址如何转化为真实地址   答:每个进程都有自己的页表,可以通过页表进行计算,大概就是base加偏移量,因为每一个虚拟内存的页对应每一个物理内存的帧。
  • 页表
  • 阻塞IO与非阻塞IO,  具体从同步阻塞到异步
  • Redis的基本数据结构  String Hash  List  Set  Sorted Set
  • Redis set的底层实现
  • 解释一下跳表
  • Redis主从复制的过程
  • Raft选举过程    利用超时机制 若跟随者超时未收到领导者消息,则等待一段随机时间后成为一个候选人,并开始新一次领导者选举;  处理时按领导者任期   Raft将时间分为一个个任期,每一个任期的开始都是领导者选举,成功选举领导者后,领导者会在整个任期管理整个集群,若选举失败,则该任期直接结束
  • Raft能避免脑裂吗
  • 算法题:搜索旋转排序数组,就纯考二分,注意边界即可。

二面 

  • 内存回收
  • 可达性分析,以及采取的方法
  • 三色标记法
  • hashmap扩容原理
  • TCP  哪些协议基于tcp  http
  • UDP 哪些基于udp  dns
  • TCP和UDP的区别     TCP 面向流 可靠 面向连接   UDP面向数据报文 不可靠 面向无连接
  • TCP如何实现可靠传输   拥塞、窗口、偏移量、确认号、重传机制等
  • TCP拥塞控制  new reno 慢启动 拥塞避免 快重传  快恢复 
  • TCP滑动窗口 arq
  • udp如何实现可靠 rudp  上层采用类似tcp的确认号和重传以及拥塞滑动窗口
  • 视频流使用的是何种协议(tcp还是udp)为什么  答了udp,单个数据的丢失不影响体验,而且需要速度快
  • 共享内存共享的是物理内存 还是虚拟内存  答的物理内存
  • 算法题 z子变换、最近公共祖先  k个一组反转

反思

其实底层的知识还是不是很懂,比如打印 &x,以及共享内存是物理内存还是虚拟内存,答案都不太确定,希望大佬们指正,虽然无了。
#面试复盘##字节跳动##面试题目#
全部评论
哪个部门呀
点赞 回复 分享
发布于 2021-09-30 08:28
那么 ,内存是物理内存还是虚拟内存?🤣 应该是虚拟吧?
点赞 回复 分享
发布于 2021-09-24 13:34

相关推荐

03-20 15:10
已编辑
门头沟学院 Java
面试时间:2025.02.28 11.001. 介绍一下你们这个项目?2. 项目具体拷打八股:3. 进程和线程的区别?4. 进程间的通信方式5. 零拷贝技术说一下6. MySQL数据库的四种特性知道吗?分别是怎么保证的?7. 你刚才提到的MVCC了解它的底层原理吗?手撕:1. 我看到你写的有设计模式。写一下单例模式java中的主要实现?写了四种(每种的作用,懒汉、饿汉DCL、枚举、内部静态类)2. 现有一个包含 k 个 IP 地址的列表,就像这样:[1.1.2.2, 1.1.1.1, 2.1.2.115] 。同时,有一个由 n 个 IP 代码段组成的列表,每个代码段由起始 IP 和结束 IP 界定范围,例如 [[1.1.1.1, 1.1.1.115], [2.2.2.2, ;2.2.2.3]] 。IP段之间没有重叠。你的任务是针对列表中的每个 IP 地址,检查它是否落在任意一个代码段所代表的 IP 地址区间内。最终输出一个长度为 k 的布尔型数组,数组中的每个元素按照 IP 地址在原列表中的顺序排列,若对应 IP 地址在某个代码段范围内,该元素为 True,否则为 False。例如,对于上述示例 IP 地址列表和代码段列表,可能输出的布尔型数组为 [False, True, False] 思路:贪心+二分● 处理点分十进制,先从字符串转化为32位无符号整型● 然后对IP段的左边界排序● 由于IP段之间没有重叠,所以可以找到第一个大于等于ip的seg[1]右边界,然后判断一下ip在不在这个段中(示例代码参考图片)撕慢了,面试结束后三小时挂
查看9道真题和解析
点赞 评论 收藏
分享
评论
1
10
分享

创作者周榜

更多
牛客网
牛客企业服务