shopee虾皮后端开发工程师一面(已经感谢信)
面试官人超级好,安慰了我一波,让我别紧张。
1、做一个简单的十分钟以内的自我介绍(???我只说了一分钟)
2、你本科学过数据结构与算法啊,说一下都有哪些数据结构吧(数组,链表,树等,队列和栈忘了说)
3、来说一下数组和链表的区别(存储空间可不可以扩展,连不连续,插入和删除的时间复杂度,栈和堆忘了说)
4、提到了树,那么说一下都有哪些树(二叉树,搜索树,平衡树,B树,B+树)
5、说一下二叉树的结构(根节点,左右子树,叶子结点),如果已知节点数N,怎么求深度(log2(N-1))
6、排序算法都有哪些(O(N^2)的冒泡,插入,O(NlogN)的堆排,归并,快排)
7、说一下快排的思路吧,口述
8、优化有哪些(随机哨兵,递归前判断,如果数量级较小用插入代替快排)
9、哈希表了解吗(说了查找的时间辅助度,还有哈希表的基本结构,问了哈希冲突不会。。。)
10、操作系统了解哪些,除了线程和进程
11、操作系统的命令知道吗(没听懂是啥。。。)
12、进程间通信方式(管道,FIFO,消息队列,信号量,共享内存忘了说。。。)
13、虚拟内存置换算法,LRU了解吗,结构和原理(hashmap+双链表,时间复杂度O(1))
14、IO有哪几种(阻塞IO,非阻塞IO,IO复用,信号驱动IO,异步IO)
15、问了问同步IO和异步IO的区别(同步是就绪事件,异步是完成事件)
16、TCP和UDP的特点和区别(这个我回答的超级好^_^)
17、TCP三次握手说说吧(英文字母SYN说了半天)
18、数据库会吗(不会,简单用过)
19、找出指定范围内,所有满足各位置依次加1的数,例如1234(看错题了。。。写了好半天,结果是错的,后来说了思路)
反问
20、技术栈是Python,Go,Java(主要是Go)
21、有大数据方向的业务吗,对高并发要求高吗(对,有的,但是可惜面试官不是这个方向)、
22、觉得我有哪些不足吗(面试官表示没面过太多人,,,后来说了数据库最好还是会,很加分的)
#Shopee面经##面经##校招##Shopee##C++工程师##秋招##C/C++#