C++基础
多态
多态,TCP,volatile关键字
问了一下hashmap,vector与map的区别
然后还问了能用volatile的地方能用锁来实现吗?有啥区别?
1.重载重写区别
数据库
用到mysql,
事务的隔离级别有哪些
有哪些常见的存储引擎
myisam为什么不支持事务
B+树了解么?
数据库中查找某一个范围内的值在底层B+树上是怎么执行的?
Mysql数据是怎么存的?
Cookie和Session讲一下,有什么区别?好处和坏处是什么?
慢查询了解么?
数据库的隔离讲一下?
计算机网络
浏览器输入url后的过程
httpDNS
DNS为什么使用udp协议
http和https的区别
https是对称加密还是非对称加密
tcp和udp的区别
tcp拥塞控制
time_wait的作用
输入一个用https协议的url到呈现出页面的过程
详细说下ssl连接的建立过程
然后问了TCP,http1.0与1.1与2.0的区别,不会!http报文格式了解吗?从发送一个请求到收到回复的整个流程是怎样的?然后说了下DNS,然后还问了啥?JNI了解吗?不了解。
然后又问了https,是如何验证证书有效的呢?
TCP建立和断开连接的过程(三次握手与四次握手)
TCP和UDP的区别
对TCP和UDP的应用分别举例
计网
1.tcp udp区别
2.从输入网址到显示页面全过程
3.三次握手 四次挥手
4.流量控制
操作系统
进程和线程的区别
线程同步的方式
线程之间共享的有什么
进程和线程的区别
进程间通信的方式
共享内存的实现方式?shmset,shmat
如何结束一个进程?kill底层发生了什么(信号)
用户态和内核态的区别
用户态什么情况下会陷入内核态
进程和线程 线程和协程的区别
段页式存储
逻辑地址和物理地址的转化
进程/线程的状态转换
死锁的概念 & 如何应对
操作系统
1.进程线程区别
2.死锁条件 预防方法
3.进程同步机制(不会)
其它
//写在前面:感觉字节很看重算法,算法题能否正确迅速解决与面试结果有直接关系,大家在牛客多多练习
一面
做过的项目(不深入)
二面
问项目,很详细,项目中提到都可能会问到(大家要熟悉自己的项目)
Linux如何查询一个被占用端口对应的进程ID
Linux如何查看CPU和内存使用情况
Linux如何查看一个文件夹占用的磁盘空间
算法题
mysql语法,寻找某列属性中每种类型的最大值(这个没答好)
旋转数组找target(牛客高频里的题。首先数组中无重复值,做出来之后,再问有重复值怎么处理,做出来之后就结束了)
做题:给纯数字字符串,切分成所有可能的ip地址(牛客中的原题,平时没刷到。拿到题刚开始没思路,面试官提醒后做了出来,面试时间有些超时,算法答得不好,很可惜应该是这方面的原因没给过)
算法题:
判断两链表是否有交点 lc160
查找峰值 lc162
算法题:1. LRU Cache的实现 复杂度O(1) 口头描述
2. K个一组翻转链表
算法题:验证有效的括号,用单调栈解决的那个
算法题:链表去重,判断是否有环,删除节点,链表相交,
- SQL:查询成绩第二大的name
- 二叉树的蛇形遍历
- 一个只有0,1,2的数组通过遍历一次进行排序
- 股票一次买卖最大收益
- 顺着上一题,股票多次买卖的最大收益
- 长度为N+1的数组存储数字1-n(有一个是重复的),O(n)时间O(1)空间找出这个重复的数字
- 二叉树子树判断:两个二叉树m,n,判断n是否是m的一部分(即子树)
- 找到最长递增子序列(Leetcode-300)
- 查找第一个缺失的正整数(Leetcode-41)
每行 每列有序的M*N的二维数组,查值,有则true无则false
总结帖
计算机校招、社招面试常见八股文整理,也是《逆袭进大厂》的唯一仓库
超全面的后端开发C/C++面经整理分享含详细参考答案 包括简历分享