算法题
- 593有效的正方形
- 104二叉树的最大深度
- 递归解决,然后问时间,空间复杂度()
- 然后问有没有迭代实现,写了层序遍历实现
- 继续问有没有其他通过迭代实现的方法,写了后序遍历的迭代实现
- 98验证二叉搜索树
- 先考虑用「判断中序遍历数组是否是严格递增的」来判断,然后问时间空间复杂度(均为 )
- 然后问觉得有没有空间复杂度是 的算法,回答有,应该可以考虑在遍历的过程中改变节点左指针的指向,但是不会具体实现
- 然后问有没有空间复杂度小于 的算法,用中序遍历的迭代实现(记录前一个访问的节点)来解题,然后问空间复杂度()
- 业务题:实现指定字节对齐的内存分配和释放操作,函数头:void *AllignedMalloc(size_t size, int aligned)、void AlignedFree(void *data)
- 业务题:页面上有两个广告位,写一个方法返回ABCD四个广告中的两种(无重复),让他们最终在广告位置上出现的概率分别为:10%,20%,30%,40%
八股
- 介绍下C++智能指针和使用场景
- C++ map 和 unordered_map的区别,什么场景下选择哪种数据结构
- C++ static 关键字的作用
- 介绍下进程、线程、协程的区别;
- 要执行一批任务时,怎么确定是使用多进程还是多线程还是多协程
其他
没有问实习,没有问项目
后记
3.12一面,3.15上午仍未出结果,下午打电话过去催,然后在1h内完成 被挂+腾讯新闻组初试的通知
#暑期实习#