第一视频
一面:
1.spark常见算子讲一下
2.删除链表中重复元素(代码)
3.二分查找并返回该元素在数组中的第一个位置
4.将字符串数组转换成int数组(不能用parseint会导致溢出)
思路:先转换成char类型,然后知道每个字符串的位数,依次用char类型转int去乘位数得到int数组
二面:
1.二叉树的深度,不用层次遍历、
2.实习工作数据仓库遇到了什么问题?都是如何解决的
kyligence:
1.currenthashmap的size方法
2.synchronized对普通方法和静态方法的区别
3.hashmap是怎么进行溢写的
4.spark为什么比hashmap快
5.hadoop和spark的区别
6.不对hashmap加锁会导致什么问题
7.线程池的常见参数
8.内存泄漏和内存溢出的区别\
cvte:
一面:
1.spark中RDD/DataSet/DataFrom的区别
2.hdfs数据怎么存储效率更佳
3.java异常模型
4.为什么要设计可重入锁
5.基于用户和基于物品的推荐
头条:
1.spark和hadoop的shuffle的区别?
2.什么时候首先考虑新建一个进程而不是线程
3.抽象类和接口的区别
4.输出二叉树最底层最左边的节点
5.B树和B+树的区别
6.列举你知道的树
shopee:
1.kafka中什么时候用key-value形式
2.kafka中分区对于spark的好处
3.输入url后,从操作系统角度考虑发生了什么
4.tcp连接只有两次会发生什么
58同城:
一面:
1.java中的共享锁和排它锁
2.怎么实现共享锁和排它锁
3.怎么实现队列和栈
4.怎么保证快排中的基准不是最大值或者最小值
5.堆和栈用链表怎么实现
6.kafka怎么保证数据的有序