回到首页

摩根士丹利面试

2022.3.21电话面试

自我介绍,实习的目的,hashtable原理、如何处理冲突,线程和进程,栈和队列,TCP和UDP,Singleton,SQL注入,事务、事务的ACID,主键和外键,同步和异步,内存泄漏,项目经历和解决问题、沟通方法,C++的四个特点

2022.3.31视频面试

1.两道题:统计使得数组偶数在前奇数在后的最少奇偶交换次数,统计偶数的数量n,arr[:n]的奇数数量即为结果,但不知为何写的代码返回值永远为0(注意位与优先级比关系运算符低,判断奇数表达式为(nu&1)==1。我没在nu&1外面套上括号,导致奇数计数==n,算出来没有偶数自然不用交换,所有测试用例结果均为0。g++11.2版本g++可能完善代码自动加上括号,使得我平常用这个逻辑表达式没注意到这个问题,笔试平台的C++编译器没有做语义的优化,暴露出我不懂运算符优先级的弱项)。记大小为n的数组中n-1个元素增1为一次操作,统计数组所有元素变为相同的操作次数。采用一步步地模拟这个操作,每次操作除最大值元素其余元素均加1,直到所有元素均为最大值。只过了一半用例,另一半超过时间限制

2.说明做上述两道题的思路。

3.项目经历。问我最擅长的语言,我回答Python,以下问题均基于python:说明什么是装饰器,实现自定义装饰器。一个很大很大的文本文件存储单词,找出文件出现频次top n的单词。我只实现了最简单的版本,在该程序coding中,一些小问题:列表的sort写法,如何使用python模板库缩减代码行数

4.自我介绍,项目经历,项目内容,项目挑战,项目成员合作和沟通方式,含有某情景的股票交易系统的实现方案、如语言、框架、数据库,系统实现高并发的方法

本文创建于2022.3.21/16.18,修改于2022.3.31/22.58