春招日记
2.24
字节跳动 教育 开发 一面(视频)1h10min
问题
自我介绍 项目介绍
数据库的数据结构
事务特性
事务隔离级别
进程通信
死锁
tcp三次握手 四次握手
语言特性都不会就没问
[leetcode142]("https://leetcode-cn.com/problems/linked-list-cycle-ii/") 要求空间O(1)
[leetcode45]("https://leetcode-cn.com/problems/spiral-matrix/")
2.26upd:拒信还是挺快的OvO
3.3
深信服 c++卷(笔试)1h30min(提前跑了)
问题
5个不定向选择 7个填空 (40分)
给n个数和n-1个 +-*/可任意组合添加括号求最大值 (30分) //不会
一段中文不知道干嘛 恶心到了 不做(30分)
3.4
深信服南研 算法 一面(电话) 20min
问题
自我介绍
n个数找两个数的和等于x
有序数组找一段连续的和等于x O(n)
找一段连续的数(无负数)和等于x
找一段连续的数(有负数)和等于x
AC自动机
定义函数指针
n个数 每次给一个index删除一个数 变为n-1个数 问执行k次之后剩下的数 O(nlogn)
项目介绍(介绍垃圾数据库课设的时候说php写的 面试官说php是世界上最好的语言??)
感觉还不错 面试官直接让等二面
3.8
深信服南研 算法 二面(电话) 46min
问题
n个数 每次给一个index删除一个数 变为n-1个数 问执行k次之后剩下的数 O(nlogn) (和一面问了一样的题)(秒)
100x100矩阵 只能往右往下走 问路径能获得的最大值 (秒)
和上题一样的模型 问刚好路径获得最大值且为100的倍数 (秒)
哈密顿回路
1000张牌 每张牌有收益 只能从第一张和最后一张拿 两人轮流拿 问先手能否获胜 (秒)
n个事情 每个事情有截止日期有收益 每天只能做一件事情 问最后的收益 (编了个优先队列的但好像挺真的假算法 感觉骗过去了??)
重构map底层查询 (没懂要干嘛)
位运算 把a的低t位拼到b的高t位
3.9
深信服 c++ 一面(视频) 35min
问题
聊了半小时acm和项目
c++的特性 面向对象
new申请数组内存
malloc struct的过程
突然就面完了 应该是挂了
3.10
图森未来 一面(视频) 65min
问题
自我介绍 聊项目
一个旋转后的升序数组 查询k的index (魔改二分就行了)
给一个字符串 再给一个字符串list 问这个字符串能否由list中的串拼出来 (写完了没时间调了 应该dp 暴力就行了 但我非要去秀技写字典树)
虾皮笔试
进不去 哈哈哈哈哈哈哈哈哈
3.11
深信服 c++ 二面(视频+电话) 40min
问题
自我介绍 聊项目
4个人过桥 分别要1 2 5 8分钟 每次最多两个人过桥 时间是走的最慢的那个 每次过桥必须要携带一个手电筒 求最短时间 (我算出来是15分钟 12过 1再回来送手电筒 让58过 2再回来送手电筒 12再一起过 2+1+8+2+2=15min)
两个人轮流报数 每次可以报1个或者两个 问先手怎样能一定报到100 (白给博弈)
使用过哪些库函数
strcmp和strlen的区别 (我听成strcmp和strlencmp了 心想没这个函数啊)
linux写项目有哪些调试方法
有没有使用过gdb
了解网络安全吗
3.13
美团笔试
问题
签到
给一个字符串招出里面的数字 消除前导0并排序
n个数 求每连续k个数的众数
树形dp
图dp
深信服南研 算法 三面(电话) 40min
问题
介绍博弈论
主席树
如何优化程序时间
说说进程和线程
同一个进程内的不同线程占用的资源一样吗
有写过多线程吗
二维数组行优先遍历和列优先遍历的区别
内存页的大小
介绍蒙特卡洛搜索
cpp程序引用.c文件里的函数怎么做
struct三个分别是int, short,long long类型的变量不同声明的顺序有什么区别
3.17
图森未来 二面(视频) 50min
问题
叙述输入一个网址发生的过程
dns
http长连接
http2.0
tcp4次挥手
tcp和udp的区别
tcp如何保证可靠传输
tcp拥塞控制
局域网如何通信
同一个局域网如何广播
ARP协议
进程和线程
切换的上下文是什么
c++程序调用函数什么东西进出栈
pc是什么
进程通信
linux文件权限
文件权限777表示什么
容器知道吗
docker了解吗
设计模式了解吗
事务ACID表示什么
数据库的隔离级别
数据库视图
sql题 如何设计索引
b+树
虾皮笔试 AK
百度笔试 AK
3.18
美团 一面(视频) 55min
Details
自我介绍
手撕 给一个升序数组 最多能选出多少数能组成等差数列
进程线程协程
协程的优势
信号量
怎么互斥访问临界区
c++如何用函数写线程
数据库隔离级别
为什么要设置主键
怎么解决脏读
怎么解决不可重复读
数据库的数据结构
为什么要用b+树做为索引的数据结构
输入网址过程发生了什么
浏览器解析过程发生了什么
有了解负载均衡吗
rpc协议和http协议的区别
https和http的区别
https把什么信息加密了
腾讯 一面(视频) 60min
自我介绍
tcp三次挥手
为什么要三次
如果第三次挥手服务端没收到怎么办
第三次挥手服务端没收到但一直收到客户端的包怎么处理
tcp四次挥手
为什么要四次挥手
如果第三次挥手没收到怎么办
计时器应该设置多大
如果第一次挥手没收到怎么办
计时器应该设置多大
服务端怎么知道有客户端的数据发送过来
socket网络编程
如果有两个tcp连接到服务端 服务端怎么查看数据
io多路复用
n*n矩阵 每行每列都是升序 找第k小的数字
美团 二面(视频) 60min
自我介绍
聊了半个多小时acm
实习的时候做了什么
给一个场景 一个网页里有新闻和商店两个业务 如何用新闻的帐号去登陆商店
数据库的隔离级别
如何实现可重复读
c++如何解决内存泄露
智能指针有什么问题 如何解决
weak_ptr扯不清楚了
3.20
虾皮 一面(视频) 60min
自我介绍
稳定的排序有哪些
快排的平均复杂度
快排最好情况复杂度和最坏情况复杂度
平衡二叉树
红黑树
tcp和udp的区别
tcp三次握手 四次挥手
为什么不能只有三次挥手
time_wait设置成多大
tcp如何保证可靠传输
输入一个网址发生的过程
http和https的区别
进程通信
用户态和内核态
有用过多线程和多进程经历吗
有了解高并发吗
select poll epoll区别
索引用来做什么
innodb的索引是什么
乐观锁和悲观锁
c++11特性
智能指针有哪些
手撕代码 给一个二维字母图 问给定一个字符串是否图中存在这个路径
3.22
MANTEIA 一面(腾讯会议) 25min
自我介绍
聊机器学习项目
面试官介绍做什么
直接到反问了???
3.33
MANTEIA hr面(腾讯会议) 30min
3.24
深信服 三面(视频) 20min
3.26
腾讯 一面(视频) 50min
自我介绍
tcp三次握手四次挥手
为什么要有time_wait状态
进程切换
虚拟地址转换过程
给100w个人名 找出出现次数最多的3个
给1000w个人名 找出出现次数最多的3个
手撕next_permutation
反问
3.28
滴滴 一面(视频) 45min
自我介绍
有哪些数据结构
链表的优缺点
二叉树
平衡二叉树
kmp
多个字符串怎么匹配
建索引的目的
如何建索引
linux指令
手撕next_permutation
滴滴 二面(视频) 25min
并查集
区间dp
tcp三次握手
输入一个网址过程
滴滴 三面 (视频) 20min
自我介绍
raft
3.29
字节跳动 抖音 一面(视频) 50min
自我介绍
tcp粘包
tcp和udp的区别
tcp是流式传输 udp是分组传输谈谈理解
tcp的流量控制
tcp头部字段
gm什么协议 不知道
有一台服务器并发量上限1000 对于新来的请求该怎么处理 如何实现这个模型
进程和线程
线程的堆和栈
进程的内存有哪些分区
为什么要有虚拟地址
token
Nginx
有使用过redis吗
手撕 01矩阵 求最大四联通区域面积
手撕 01矩阵 求最大四联通区域周长
3.31
墨奇 一面(腾讯会议) 50min
自我介绍
进程和线程
死锁
智能指针
为什么析构函数要用虚函数
手撕 给两个升序数组 找合并数组的中位数
伴鱼 一面(微信视频) 30min
手撕 leetcode138 (不会于是换题)
手撕 迭代实现二叉树中序遍历
4.1
墨奇 二面(腾讯会议) 60min
自我介绍
进程线程协程
哈希的数据结构
哈希表扩容
map和unordered_map
索引的数据结构
有三列值域范围为0-10 0-100 0-1000 选哪一个作为索引
数据库行存储和列存储
cpu除了寄存器还有 哪些地方存储数据
有几级cache
流水线
分支预测
lsm tree
cmd
循环展开
vialiate关键字
inline
inline优缺点
shared_ptr
内存对齐
两个骰子可旋转交换 在每一面填数字 用来表示所有的日期day
伴鱼 二面(微信视频) 50min
raft协议
进程线程协程
进程和线程切换
进程通信
输入网址过程
顶级域名有哪些
tcp三次握手四次挥手
tcp第三次握手没收到
场景 拼团
场景 秒杀前100
sql两张表
4.2
米哈游 一面(腾讯视频) 30min
链表和数组异同
栈和队列
bfs和dfs
map的底层
红黑树
堆
堆区和栈区
inline
宏和inline的区别
const int *a和 int *const a区别
C *A = new C怎么分配内存的
C++多态
delete[]
malloc free 和new delete的区别
4.3
腾讯 二面(视频) 50min
C++析构函数能不能用虚函数
死锁
如何解决死锁
http状态码
get和post区别
tdp和udp区别
tcp粘包如何解决
在网络上如何知道有消息传输过来
手撕 n!
raft协议选主
4.6
墨奇 三面(电话) 40min
聊天
虚拟内存
tcp和udp
mysql和nosql
redis
网易 雷火 一面(视频) 20min
union和struct
poll怎么突破上限
函数指针
模版
sql代码题
网易 雷火 二面(视频) 65min
协程
extern
4.7
墨奇 四面(腾讯视频) 20min
百度 搜索 一面(视频) 70min
输入url发生了什么
tcp三次握手
二次握手和四次握手会怎样
数据库事务
事务隔离级别
脏读是什么
不可重复度是什么
幻读是什么
mvcc
共享锁和排他锁
b+树
联合索引
linux查询文件某字符串指令
linux查询端口指令
手撕堆
单链表 O(1)删除第i个节点
4.8
米哈游 二面(视频) 55min
手撕四个代码题
4.13
G-bits 一面(视频) 30min
自我介绍
tcp和udp的区别
dota2是tcp还是udp
打boss怎么解决高并发
打boss最后一刀如何判定
G-bits 二面(视频) 30min
闲聊
手撕 最小连续子串和