首页 / 金山
#

金山

#
168969次浏览 1766人互动
此刻你想和大家分享什么
热门 最新
不愿透露姓名的神秘牛友
昨天 17:14
已编辑
算法岗秋招offer帮选
投票
金山办公 培训后定方向 n*14 + 700餐补,12%公积金 硕士985
点赞 评论 收藏
分享
2024-11-05 17:16
门头沟学院 C++
WPS金山C++一面凉经
1.C++有哪些特性,请使用一段代码演示这些性质。我写了一些经典的继承,子类中重写的父类的虚函数,然后用父类指针指向子类对象,去实现多态。但是写的时候有点脑子发昏,把所有成员全public了,被面试官点评为这违背了封装。2.写两个类,两个类分别有一个虚函数,然后有一些char和int类型,写一个子类去继承这两个类。3.问上述子类的大小?我考虑两个虚函数指针以及内存对齐之后,给出了正确的大小。然后被面试官套路了,问我有子类有两个虚函数指针吗?我说没有只有一个,然后把答案改错,我是个傻子。4.如何指针类外访问私有成员?一开始是问如何访问私有成员,我说可以使用友元函数。忘了面试官怎么说的,但是引导我用指针去思考。我没写出来。后面查了一下,可以把类的指针转用reinterpret_cast成对应的数据类型,然后考虑此前类内的内存分布后,给指针位移去找到对应的变量。5.一些常规C++八股,智能指针和移动语义。6.问智能指针对象本身是不是线程安全的。7.问我自己写的一行代码,代码内容是用new申请一块堆内存,问这是不是线程安全的。8.c++的STL八股。9.问map和vector在已知key和下标的查询复杂度。我回答都是O(1)。10.c++sort是怎么实现的?我回答:我说根据数据量大小选择快排,堆排。不知道有没有归并,我没查过。11.用快排实现查询第K大的数。这个我写出来了,但是差以为,因为小标是0开始的,所以我实现的版本是第0大的数字是大的,而不是第一大的数字。##
国棉17厂丶小王:sort是长度小于32选择插入排序。大于32选择快排,快排采用递归进行,如果递归栈的层数超过了1.5log n,那么就改用堆排,快排随机数的划分,40个以上采用九数取中,40个以下3数取中。(随机选择和递归深度msvc是这样的,其他stl不清楚),但是排序算法是这三个都一样的
查看11道真题和解析
点赞 评论 收藏
分享
10-15 10:02
已编辑
武汉大学 前端工程师
金山办公WPS内推来啦 内推码NTAXvls
投递金山WPS等公司10个岗位
点赞 评论 收藏
分享
2024-12-27 23:30
已编辑
蚌埠坦克学院 C++
金山二面
===============时间线====================12-03 一面12-05 二面12-13 HR面12-18 OC12-27 收到签约邮件===============时间线====================12月12日更新,约HR面# 无自我介绍# 熟悉的C++版本C++11以后的基本都了解一些, 没有特别针对某个版本.# 智能指针1. `shared_ptr`: 支持拷贝、移动,可以作为返回值类型,避免大对象的拷贝. 引用计数是线程安全的2. `unique_ptr`:支持移动,可以通过转移所有权的方式,将对象的所有权转移给另一个独占指针3. `weak_ptr`: 支持拷贝,可以作为返回值类型,但是不能转移所有权,只能通过weak_ptr转成shared_ptr# gdb gcc有用过吗不怎么用gdb gcc有了解## gcc如何预处理忘了,回答gcc有参数控制```bashgcc -E main.c -o main.i```## 如何获取不进行链接的代码忘了,回答gcc有参数控制```bashgcc -c main.c -o main.o```# 线程安全的单例模式1. 通过C++11`std::call_once`实现2. 对指针判空执行两次,因为第一次判断为空后初始化前,可能其他线程已经初始化了,所以要两次判空问有没有其他的,回答原子变量应该也行,不是很了解。# 了解压缩算法吗不知道为啥问这个问题,面试官接着问是否了解哈夫曼,然后让讲一下自己了解的压缩算法。回答了科研做的图像压缩。# 项目## 项目结构略## 负载均衡怎么做的通过`roundRobin`方式实现,返回一个连接数量少的服务器;接着问道有考虑延迟吗,回答没有,因为是在单个机器测试的。## 单例模板基类是什么通过模板类是实现一个单例基类,子类通过CRTP的方式实现单例。## Qt键盘鼠标事件1. 键盘事件:`keyPressEvent` `keyReleaseEvent`2. 鼠标事件:`mousePressEvent` `mouseReleaseEvent` `mouseMoveEvent`# linux相关## docker如何建立目录映射回答,在创建容器时通过`-v`指定宿主目录和容器目录的映射关系。## top如何根据内存占用排序回答不知道,自己使用的基于top封装的btop,可以通过命令控制```bashtop -o %MEM```## 如何查找进程的句柄,回答不太了解。可以使用`ps`命令查询进程状态。查询大模型得到:进程句柄:操作系统为每个进程分配的一个唯一标识符。它主要用于操作系统内核和其他系统组件之间进行进程管理和通信。以下是关于进程句柄的一些关键点:```bashls -l /proc//fd```## 查看进程端口占用```bashnetstat -anp | grep```## 查看进程打开的文件句柄回答不知道,查询大模型得到:```bashlsof -p```# git回答稀碎,只会使用`push`, `pull`## git rebase`git rebase`可以将一个分支的更改应用到另一个分支上,可以用来1. 更新分支:- 将当前分支的更改应用到最新的主分支(如 main 或 master)上,以保持代码的最新状态。- 例如,如果你在一个功能分支上工作,而主分支上有新的提交,你可以使用 rebase 将功能分支的更改应用到最新的主分支上。2. 线性化提交历史:- rebase 可以使提交历史更加线性,避免合并提交(merge commit)的出现,从而使提交历史更清晰。- 例如,如果你从 main 分支派生了一个功能分支,并且 main 分支上有新的提交,rebase 可以将你的功能分支的提交重新应用到 main 分支的最新提交之上。3. 解决冲突:- 在 rebase 过程中,如果遇到冲突,Git 会暂停并提示你解决冲突。解决冲突后,你可以继续 rebase 过程。- 例如,如果你的功能分支和 main 分支在同一个文件上进行了修改,rebase 会提示你解决这些冲突。## git 如何创建分支回答使用`checkout`具体是:```bashgit checkout -b```
查看20道真题和解析
点赞 评论 收藏
分享
头像
2024-03-20 21:07
已编辑
门头沟学院 C++
金山一面 45min 笔试得分爆料
主要考察内容:C++,基本算考八股文面试官会先自我介绍(工作涉猎wps,qt等),再我自我介绍面试提及内容:都是简历里的数学建模竞赛(陕一,解释分析没有国奖的可能因素)【问题按照印象写的,没有先后顺序】1. 多态2. 进程间通信,主要解释共享内存3. 线程,语言层和系统层4. 是否了解win os的进程间通信5. sort底层原理6. map,unordered_map,set底层原理7. map键是否支持自定义8. 排序算法的时间空间复杂度,特别聊了一下快速排序空间复杂度,考虑递归占用,应该是logn9. 提及到自己模拟实现stl,我个人解释了容器适配器类和容器不同实现思路依据(就是以来现有的区别)10. 解释vector扩容机制,我一并自助反问是否问可能问的问题,扩容倍数,扩容依据,等长扩容,倍增扩容,高倍扩容影响等11. 类型转换,尤其是动态和静态12. 虚表,虚函数等一些列(主动回答)13. 常用设计模式14. 深浅拷贝其他忘了反问:ai开发程序员driven(名字可能记错了):面试官措手不及ChatGPT使用情况面试评价其他的话,本来像往项目上拉扯,结果一点没问同时爆料笔试成绩,秋招49,春招80+其他本来想问qt,但是我解释处于初学可能问了也没什么效果😋以上是还记得的内容😂可能问的时候主要和你笔试相关
在游泳的小冤种很好奇:wps客户端c++开发吗?
金山WPS一面39人在聊
点赞 评论 收藏
分享
2023-11-20 16:52
已编辑
门头沟学院 后端工程师
金山办公二面 100min 答出90%
勤劳的加菲猫在打卡:跟我一样,我全部回答出来也挂了
投递金山WPS等公司10个岗位
点赞 评论 收藏
分享
玩命加载中
牛客网
牛客网在线编程
牛客网题解
牛客企业服务