面试官是个很帅的小哥哥~
首先问了操作系统的问题:
1. 进程与线程的区别?协程了解过吗?
2. 系统调用了解过吗?
3. 线程间的信息交换?
4. 虚存了解过吗?程序对虚存有感知吗?【这个好像打错了用户空间应用程序中的所有地址 都是虚拟地址。】
我在一本正经的胡说八道........麻了...................................我说的没有.........
然后问了计算机网络的问题:
1. http和https的区别?
2. TCP和UDP的区别?
3. TCP如何实现流量管理和拥塞控制?
然后问了计算机语言的问题:
1. 堆和栈的区别?程序运行时,堆中存什么?栈里面存什么?
最后一道编程题:
一个数,可以被分成若干正整数的和,求这个数被分成若干正整数的乘积的最大值?
我用的DP
```
#include <iostream>
using namespace std;
int n;
const int N = 60;
int f[N];
int main()
{
scanf("%d", &n);
f[1] = 1;
for (int i = 2; i <= n; i++)
{
for (int j = 1; j < i; j++)
{
int x = i - j;
f[i] = max(f[i], f[j] * f[x]);
f[i] = max(f[i], j * x);
}
}
printf("%d", f[n]);
return 0;
}
```