一、项目
1、Spring MVC与Struts2的区别:
2、MVC三层是如何工作的?比如:要访问一个Url?a=xx&b=xx,怎么找到相应的资源,怎么运算,怎么返回等?
3、数据库mybatis,如何优化的?加索引。
二、计算机网络
1、get与post的区别
若要传输一个比较大的内容,使用post请求,因为get请求是有字长限制的。
2、http协议的状态
200 OK,404 Not found,301 请求的资源永久性的移动到了新位置,302请求的资源临时移动到了一个新位置
三、Git与SVN的区别
Git是在本地有备份的,SVN没有。
git pull(pull下来后与本地merge),git fetch(没有merge功能),git rebase(更改head)这几个命令的区别?
四、数据结构
HashMap内部是怎么实现的?拉链式结构
TreeMap 红黑树
五、算法
1、如何判断一个单链表中是否存在环(两个指针,一快一慢)
2、求Fibonacci数列的最快算法,最少时间复杂度是多少?O(N)
使用迭代算法,动态规划,int a,b
3、求1-9999这9999个数字中含有多少个1? 分类,排列组合
4、都知道哪些排序算法(具体怎么实现)?手写堆排序算法,冒泡排序算法。
5、数组大小为N,元素取值范围为[1,N],统计每个元素出现的次数。要求时间复杂度为O(N), 空间复杂度为O(1),可以改变数组元素。
六、Java基础
1、GC垃圾回收机制原理
2、== 与 equals区别
3、final关键字
4、short s1=1;s1 = s1+1;
七、操作系统
linux常用命令
八、前端
正则表达式、js、css块、html、bootstrap
九、IPC(中间件)
例如:spring mvc等,是将HTTP协议......
十、数据挖掘
聚类算法:如何优化?