【贝壳秋招开发一二面】2022.9.4
1自我介绍
2reaCTOR是基于多进程还是多线程 多线程
3epoll :将变化的文件描述符从内核态考到用户态(这是错误的) 应该是建立内存映射映射到用户区
4内存管理:三张表的映射 内存分区
5缓存淘汰算法:lRU LFU 时间片轮转 先入先淘汰
LRU的两种:dispairedLRU LRU 一种设置超时时间 一种不设置
6cas原子锁 啥时候加锁(自定义数据类型) 啥时侯原子操作(内置数据类型)
7c++ 封装继承多态
8归并和快排算法
9拥塞控制四种算法:慢启动 拥塞避免 超时重传、快速重传 快恢复
10b+树和联合查询的优点
11进程和线程区别
12进程切换切换那些? 寄存器、栈、TLB、页表
13进程同步、线程同步、进程通信方式
14跳表
https://zhuanlan.zhihu.com/p/68516038
跳表全称为跳跃列表,它允许快速查询,插入和删除一个有序连续元素的数据链表
查询的复杂度都是O(logn) 原先是O(n)
终插入和删除的时间复杂度也为 O(logn)。 查找需要logn,插入删除需要1
是用空间来换时间
需要维护索引与原始链表的大小平衡,也就是结点增多了,索引也相应增加,避免出现两个索引之间结点过多的情况,查找效率降低
通过一个随机函数来维护这个平衡
16redis四种数据结构 set zset map string list
17项目提问:7000并发量少,10000左右可以 与静态页面大小也有关、IO次数 改进:设置多线程,每个线程epollwait
18编程题:两数之和 (口述)
更多校园招聘常见面试问题(开发、算法、编程题目)参见CSDN博客:http://t.csdn.cn/V4qbH
欢迎关注、收藏、点赞后进行问题咨询及秋招建议!!
#23届找工作求助阵地##软件开发薪资爆料##你的秋招进展怎么样了##你觉得今年秋招难吗##我发现了面试通关密码#涵盖数据结构与算法、编程语言、数据库、操作系统、计算机网络、设计模式、项目经验、综合智力题