shopee开发一面
面试官很尊重面试者,会提前到面试房间等着,面试开始会先做自我介绍、此次面试预计时长,提醒他会记录面试过程,所以会有停顿;
整个过程中面试官没有什么明显的表情,对于一些问题会给肯定,大部分问题会点头示意,不会的问题可以讲一下自己的猜测,面试官也不会穷追不舍,所以我也不知道答得对不对......
以下是过程,希望对各位兄弟姐妹有用:
- 自我介绍
- 数据结构
- B+树和B树的区别
- 红黑树了解吗
- 红黑树和二叉树的区别
- 怎么判断链表有环(答快慢指针)
- 追问不考虑内存的话有没有别的办法
-
- 数据库
- 索引有什么类型
- 为什么innodb用B+树
- 等值查询的话用哈希还是B+树
- 在A上建立索引,问以下两个语句的性能区别
- select A from t where A=1
- select * from t where A=1
-
- 主键索引和唯一索引
- B+树上查询范围A>1 and A<10的查询过程
-
- 操作系统
- cache和buffer的区别
- 怎么杀死一个进程
- 僵尸进城和孤儿进程
- 进程之间通信方式
- 有名管道和无名管道的区别
- 进程调用机制:select,poll,epoll
- 事件监听机制
- tcp的流量控制方式
- 具体展开拥塞控制
-
- 线程
- 线程池的参数
- 线程的锁
- 生产者消费者的实现
- 死锁的避免方式
-
- 容器
- hashmap、hashtable、concurrenthashmap的区别
- hashmap如何解决hash冲突
-
- 算法题:
- 提取字符串中的数字,组成一个五位数的int整数类型数值,并找到最大值;字符串:a0b8cE9JDU8u1EE9JD(6个数字)
- 变形:如果是每次找到字符串中数字的个数减1个长度的数字(比如字符串里有7个数字,就找最大的6位数,如果是5个数字,就找4位数),要修改代码什么部分
-
- 反问
- 主要技术栈
- 面试结果时间
-
许愿下一面
#面经##Shopee##Java工程师#