金山服务端面试面经
金山服务端一面:
1、 数据库事务的特性?
“ACID”,原子性、一致性、隔离性、持久性。
2、 1000万个数取前100个数的排序算法;(类似于N个数取前K个数)
考虑最小堆。(主要考查是复杂度)
3、 排序算法的复杂度;
4、 TCP/IP三次握手过程(参数、参数值);
5、 C语言结构体中sizeof的问题,32位系统的话;
需要考虑内存对齐。
6、 识别手机号的正则表达式;
String pattern = "^((1[3,5,8][0-9])|(14[5,7])|(17[0,6,7,8])|(19[7]))\\d{8}$"。
7、 从浏览器地址栏输入url到显示页面的步骤;
8、 get、post区别;
9、 多态的实现;
二面:
1、 数据库SQL:取出有序结果中第10-20条记录;
类似于select top n-m+1 * from test where (id not in(select top m-1 id from test))。
2、 树的遍历搜索;
3、 C语言中strcat的实现;
现场写代码;
4、 关于项目的一些问题;