本人情况:双非普通一本,JAVA后台开发,第一次面试,面的不是很好...
项目相关:
- 简单介绍自己做的项目以及特点
- 说说同时购物系统两个人同时付款时如何处理?答了加锁,还有消息队列,但是好像不是面试官要的答案,直接说了不知道..
- 说一说淘宝系统如何处理高并发下客户请求(这些都没有复习过,之前有看过一些,但是太紧张了,一个都答不出来)
- 如何提高SQL查询效率,在语句方面上的优化?
JAVA相关:
- == 和 equal的区别
- hashmap和hashtable的区别
- 为什么用CurrentHashMap而不用hashtable以及CurrentHashMap的底层原理
java问的不是很多,虽然之前一直在复习java,但只问了一点点
MySQL相关:
- 谈谈索引的数据结构?说了B+树
- B+树和B-树的区别以及优点?
- 为什么不用搜索树?
计算机网络相关:
- TCP和UDP的区别?
- TCP和UDP稳定性方面的差别?
- TCP为什么要四次挥手?
其他问了redis和操作系统上的问题,但都说不会...
算法:
把数组元素按照正负序重排列
给定一个数组,数组它按照下面的规则重排列后的数组: 1. 数组中的正负数相互间隔 2. 符号相同的数字相对顺序不变 3. 如果某种符号的数字多余,放到数组最后
例如:-1,3,2,4,5,-6,7,-9
重排列后:3,-1,2,-6,4,-9,5,7
空间复杂度要求O(1)
算法不是很难,主要是空间复杂度要求为1,但是时间复杂度不限,所以想的解法时间复杂度有点大,一直不敢下笔,最后问了下面试官,面试官说就试试吧,写完提交后面试官说ok
全部评论
(16) 回帖