吃一堑长一智!象棋游戏java编程

Posted 普通网友

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了吃一堑长一智!象棋游戏java编程相关的知识,希望对你有一定的参考价值。

一面:

先是问了问项目,然后就开始问一些问题

1、每个请求耗时100ms,机器的配置是4核8G,问要达到10000TPS需要多少台机器?

没答上来,问了问是IO密集型还是CPU密集型,然后面试官说我想得太复杂了

2、怎么实现网页的自动跳转

答301 302的Location字段,然后又问了我这两个有什么区别

3、有一个10G大小的文件,里面都是32位的无符号整数,但是内存大小只有1G,问如何找出里面重复的数字

一开始说用hash,先hash到小文件。面试官说有没有更简单的,答位图,又问你觉得位图会占用多大的内存空间。算了一会,答512M

然后就是算法题,一个Unix的路径,简化这个路径,Leetcode上有原题

一面大概36分钟

二面:

围绕项目问了很多问题,和我讨论了怎么保证双写的一致性、消息队列中消息积压了怎么办、为什么要用到分布式锁、ZK的分布式锁的使用流程、ZK的选主策略、同步策略然后又围绕Kafka问了一些问题。

1、Kafka怎么保证顺序消费?

2、Kafka的架构是什么样的?

3、Kafka可以保证一个主题所有的分区都顺序消费吗?

算法,给一个数n,求所有和等于这个数的连续子序列,比如15=1+2+3+4+5=4+5+6=8+7,所以输出3.

三面:

主要是围绕着基础的知识问了一些问题:

1、Java的GC

2、反射,反射是怎么实现的。

没看过是怎么实现的,现场猜想了一下,应该答错了

3、讲一下乐观锁和悲观锁

4、网络协议的分层,每一层是干嘛用的

5、DNS是哪一层的,域名解析的过程是什么样的?

6、进程间通信的方式,什么情况下需要进程间通信?

这个题答得也不太好,讲了管道、信号、共享内存区域

7、volatile关键字

8、Synchronized和Lock

这个地方我是想等他来问我底层的原理,所以说的时候没说完。不过说完他也没反馈,也许知道什么就应该全部说出来?

做一道算法题,序列化和反序列化二叉树

9、内核态和用户态介绍一下

最后面试官和我聊了聊平时是怎么学习的,最近学什么东西比较有心得,以后的职业规划是什么。

最后

很多程序员,整天沉浸在业务代码的 CRUD 中,业务中没有大量数据做并发,缺少实战经验,对并发仅仅停留在了解,做不到精通,所以总是与大厂擦肩而过。

我把私藏的这套并发体系的笔记和思维脑图分享出来,理论知识与项目实战的结合,我觉得只要你肯花时间用心学完这些,一定可以快速掌握并发编程。

不管是查缺补漏还是深度学习都能有非常不错的成效,需要的话记得帮忙点个赞支持一下

Java面试精选题、架构实战文档传送门:点击这里免费领取

一下

Java面试精选题、架构实战文档传送门:点击这里免费领取

整理不易,觉得有帮助的朋友可以帮忙点赞分享支持一下小编~

以上是关于吃一堑长一智!象棋游戏java编程的主要内容,如果未能解决你的问题,请参考以下文章

Java大厂技术面试题汇总!象棋游戏java编程

团队-团队编程项目中国象棋-项目进度

课后作业-团队编程项目总结

团队-团队编程项目中国象棋-项目总结

团队-团队编程项目中国象棋-项目总结

团队-象棋游戏-代码设计规范