海康威视-应用软件开发工程师-Java-暑期实习笔试
《面试题目》
- 逻辑视图
- sql题目
- Java Web不同客户端共享数据存储在哪里
- Bucket排序时间复杂度
- Collection接口有哪些
- UDP协议特点
- Zookeeper的Observer
- 列式存储是啥
- Object类有哪些方法
- 反射机制有哪些
- 类的main方法怎么定义是正确的
- 编程:一个自定义排序题还有个求二叉树最大深度
《参考解析》
-
计算机网络:TCP(传输控制协议)是面向连接、可靠的传输协议,提供流量控制和拥塞控制;UDP(用户数据报协议)是无连接、不可靠但速度更快的协议。TCP通过三次握手建立连接(SYN→SYN+ACK→ACK),四次挥手断开(FIN→ACK→FIN→ACK)。
-
MySQL深度:MySQL InnoDB使用B+树索引,支持ACID事务。关键知识点:聚簇索引(主键索引)叶节点存完整行数据;辅助索引叶节点存主键值(需回表);MVCC通过undo log版本链+ReadView实现多版本并发控制,解决脏读/不可重复读;事务隔离级别从低到高:读未提交→读已提交→可重复读(默认)→串行化。
-
算法题解析:常用算法思路:动态规划(状态转移方程,自底向上);BFS/DFS(图遍历,BFS找最短路,DFS回溯);双指针(有序数组去重/两数之和);滑动窗口(子串/子数组问题);二分查找(有序或单调性)。时间复杂度分析:关注最坏情况和平均情况。