背景
学历:双非一本,软件工程大四在读
项目:
一个分布式的商城管理后台,简单的分布式系统
一个Spring cloud (nacos + gateway) + security+netty实现的分布式聊天室
一面
时长:一个半小时
算法(一个小时):
1.topK,分别写出范围小、范围大、范围超大(说思路)的情况。
答:分别是计数、快选、分治
2.超大数计算,两个长度>100的数字进行加减法, 要考虑负数。
答:很简单,处理好进位借位就行
基础:
(半个小时,时间比较短,感觉因为wxg用的是C++, 而我用的是Java,所以问的不多)
1.堆和栈的区别是什么,哪一个需要程序员控制?
2.Java加锁有几种方式?
3.不同进程中malloc函数返回的值会是相同的吗?(会,因为有虚拟内存)
4.栈和队列在操作系统中有哪些应用场景?(递归和调度)
5.Java的GC,新和老分别是什么算法?为什么?
6.TCP和UDP的区别是什么?应用场景是什么?
7.你觉得微信聊天中哪些功能是UDP哪些是TCP?ÿ