首页 > 7.22 阿里 政务中台 Java后端
头像
超超超c
编辑于 2020-07-23 10:46
+ 关注

7.22 阿里 政务中台 Java后端

一、项目


二、Java相关的题

1.String是可变的吗

2.StringBuilderStringBuffer

都是用来处理字符串的拼接的,但是StringBuffer是线程安全的,StringBuilder是不安全的,但是实际上,当你的拼接次数在百级别的时候,使用以上三个几乎看不出效率上的差异(自己测试过),再往上才能体现出StringBuilderStringBuffer的优势。

3.什么是线程安全什么是线程不安全

4.线程池是什么样的结构

①避免直接创建和销毁线程,这都是操作系统级别的“动作”,是很耗资源的

②用来做类似流量控制,避免过多线程同时运行造成CPU负载过重

5.Java里面线程池的类结构

6.线程池里面的一些核心参数,核心线程数、最大线程数、队列

7.ClassLoader

8.JVM的内存结构

老年代

新生代 survivor

eden

又大概讲了一下垃圾回收相关

三、算法题

1.存在一个字符数组或者说是字符串,删掉里面相邻且相等的全部字符,使得最终的字符串没有相邻且相等的。比如[a,b,c,d,d,d,c,a,d]最终结果应该是[a,b,a,d]

2.给出一个森林,找出其中叶子节点深度最小的那颗树

这里就是说用变量存储那棵树的跟节点,再用一个全局变量minDeep存储当前最小深度,每棵树用递归去做,递归的参数是(当前节点,当前深度),递归的结束条件是(left==null&&right==null),然后每次递归结束都判断当前深度跟minDeep做一个比较。

时间复杂度是总的树节点的个数n,空间复杂度只需要上面说的两个变量。

如何优化

可以做剪枝的操作,可能之前某次操作已经得出来目前为止的的最小深度了,那么对于后面的递归,当发现深度大于目前的minDeep的时候就可以不需要继续递归下去了直接减掉当前分支。
后面面试官还问可不可以继续优化,当场确实想不出来,然后晚上睡觉前就想到了。。可以做层次遍历

四、网络

1.网络七层结构

2.arp协议在哪一层

前几天刚好看到过哈哈哈哈哈,在数据链路层,ipmac转换

3.http2.0

不清楚。。。

4.tcp协议头有哪些东西

我怎么知道啊。。。

五、数据库

1.数据库第一范式

没有答出来。。

2.MySQLprimary key有什么作用

没有primary key要全表扫描,加了树结构索引可以加快查询

3.primary key 如何保证不重复

这里我实在不知道想问什么。。说了auto_increment自增,然后面试官说加入我有id=7,现在我要insert id=7,会怎么样,这个我就没有试过了。

4.数据库有哪些存储引擎

主要是InnoDBMyISAM

5.InnoDB的索引是什么样的结构

这里扯到了和MyISAM的区别,也就是聚簇索引和非聚簇索引

六、后面就是聊天了

更多模拟面试

全部评论

(9) 回帖
加载中...
话题 回帖

相关热帖

近期热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

近期精华帖

热门推荐