杭州新畅元面经
qt方向
项目:云盘
比赛:nas和进化算法方面
36min,14min项目,6min比赛,最后写题
项目(14min):
开发中用到哪些技术?(多线程)
核心的最难点的技术是哪一个?(通信协议设计)
通信协议同步的方式还是异步的方式?(说这个是一个结构体,整体传输)
前端和后端这边的通信协议相当于通信的机制。采用的是什么样的机制?n 个用户同时上传数据,然后你这个并发,你是怎么来处理的?(多线程)
机器的能力是有限的,然后你只能最多起 100 个线程来处理,那你这个排队机制是怎么来处理的?这种文件部分内容一块一块的上传是不是异步上传,这个有没有考虑?(没有)
线程和进程之间它有通信的机制吗?你了解过吗,比如说我这个两个线程干的事儿是不一样的。(没有)QT有没有用过比较好的前端界面工具包(不了解,主要关注后端功能)
C + + 桌面开发这一块有了解过其他的吗,就跑过什么开源项目。就比较复杂的一些就是界面开发,包括前后端的通信、进程之间的通信。(没有)
前端有什么新的框架,桌面开发这块,应该有些轮子,你了解吗?(no,比较偏后端功能,数据逻辑)
数据库、消息队列、存储,这些肯定是要有的。所以你的优势是在哪一块?你比较擅长或者比较感兴趣的是在哪个方向?(记不清了,估计是逻辑实现)
异步文件的读写有什么研究过吗,你不能总是同步的读一个大文件,然后如果他占着了所有的资源都占着,那你其他事都干不了(没)
前端C++业余爱好是把,项目里稍微用了点东西(面试官笑着说)
比赛(6min):
详细讲一下这一块吗?nas网络搜索?(darts空间、微调、宏搜索空间)
写题:
未排序的数组中找到第K大的数字
分析算法复杂度(我写的冒泡排序,说n^2)
有效率更高的算法吗?(快排)
快排快,但还不够,因为我们找第k个,不需要把数字排完(归并)
有刷过题吗(一些)
再多刷一些题,因为这个是比较简单的题了
反问:
对我的评价:可以在准备,算发挥出水平了。(敷衍)
#面经#
OPPO公司福利 1081人发布