柠檬微趣凉经

unity和C++客户端都投了,只有C++岗位有笔试

笔试题

4道,具体记不太清了

1,是个归并排序合并链表

2,递推题,比较简单

3,当时没想出来的一道,一个数组,求每个位置的值,值是该位置后方元素中大于该位置元素的数中的最小值(有点绕口,具体就是2,1,5,3例如对第一个元素2求值,结果是1,5,3中大于2的最小值 3)

后面想了想,可以先对数组排序,记录排序后每个元素的原先位置,然后就是单调栈遍历就行了

4,模拟正则表达式匹配字符串

一面(60min)

虚函数表存在什么内存区域上,如果一个子类没有重写虚函数,会和基类公用一个虚函数表吗

虚指针为什么开头初始化

引用能不能实现多态

shared_ptr的引用计数实现原理

如果插入多个数据,用哈希表还是红黑树好

红黑树和avl的区别,插入多个数据,选择avl还是红黑树?

哈希表什么时候扩容

什么时候调用移动构造函数

还有一些简单的就不列了,其中还让手写实现了一下拷贝赋值运算符和移动赋值运算符,类中含有int * 数组的不同处理

最后一道反转链表

二面(40min)

上来介绍项目和难点(这里脑子不知道怎么抽了,突然忘了怎么实现某个功能了,结果别的方面也没说好。。。)

工厂模式介绍

然后就是一道场景题

一个二维平面n*n,往里面放入不同大小的长方形块,有长宽,方块可以旋转,问能否放下,并给出各个方块的摆放位置。

(没想出来,还让我手写一下,连函数模板和结构体也不给,想了半天说了不会,面试官说那给固定大小平面,固定数量方块,不可以旋转能不能实现,还是不会,我觉得这条件减的没什么区别吧,可能我还是太菜了,最后换了道题)

换了道还是场景题

二维平面n*n,一个火焰装置可以向四个方向喷射火焰,火焰结尾处如果碰到别的装置,那别的装置也会喷射火焰,

给一堆装置,判断是否存在火焰绕成环的情况。

依然没给函数模板和结构体,都得自己设,类似于判断存不存在环,这里写的就简单用个u_map存一下看看有没有重复来实现。

二面答的不好,可能忘吃早饭了,项目突然忘了怎么实现的了。。。后面场景题也没答出来,下午被挂了。

所以早饭还是得按时吃才行。。

#面经##柠檬微趣面经#
全部评论
请问佬笔试多少分进的面试,我今天那题单调栈和你一样,我直接单调栈拿了16%,然后AC了两道,还有一道90%,加起来勉强答对3题,不知能不能进面试
点赞 回复 分享
发布于 2024-05-19 16:59 江苏
请问笔试后多久约的一面呀?
点赞 回复 分享
发布于 2024-05-07 11:42 北京
怎么笔试题都不换的,关键是写完才知道
点赞 回复 分享
发布于 2024-04-30 21:54 湖南
这个第一题np吧,只能回溯dfs找状态了,复杂度爆炸的
点赞 回复 分享
发布于 2024-04-03 18:31 山东
请问这种场景题还要具体代码实现嘛
点赞 回复 分享
发布于 2024-03-29 01:51 美国
友友什么时候二面的?一面多久后通知的?
点赞 回复 分享
发布于 2024-03-28 14:06 湖南

相关推荐

1.  自我介绍2.  JS定义变量方式?let const var区别?3.  为什么用const定义变量不可以被修改?底层原理?一定不能改?4.  `let a = 1; let a = 2;` 会发生什么?会报什么错?5.  `var a = 1; var a = 2;` 可以吗?`var a = 1; let a = 2;` 呢?6.  `var`特性(如变量提升)?`console.log(a); var a = 1;` 的结果是什么?7.  JS中基本数据类型?分别存储在哪里(栈/堆)?8.  `let a = {}; b = a; `修改b会影响a吗(会)如何避免(深拷贝)9.  实现一个深拷贝?其它具体方法?10. 什么是同步和异步?什么场景下使用异步?11. 如何将异步操作中的变量/结果给同步代码使用?12. Promise的.then()和.catch()区别?什么情况用?await?13. ==和 ===区别?14. false == '0'结果?false == undefined?null == undefined ?15. 可以 let null = 1吗?16. String常用的方法?17. Array有哪些常用的增删改查方法?18. typeof和 instanceof 区别?19. 介绍一下 Webpack20. Webpack 中的 Loader ?作用?21. Webpack 有哪些特性?构建速度?如何优化?22. 什么是 HTTP?和 HTTPS 区别?23. 为什么 HTTPS 安全?(对称加密和非对称加密解释 HTTPS 的原理)24. 算法题:分金条(LeetCode原题:分发糖果)。25. 解法时间和空间复杂度分别是多少?26. 开发过程中遇到过什么问题?(结合项目说了点方法论)27. 职业规划?28. 反问环节(作息、业务、问了下为啥没问项目和实习,说比较侧重基础)ps:算法只让说思路,而且题目是口述的一开始以为是对于所有人,评分高的要比评分低的分的多,排序+遍历即可后边说我理解错了,是相邻的人,评分高的分的多做过接雨水,类比了一下,两次遍历即可(以为是mid,下来一看是hard)面试体验:还可以,基础的小点比较多比较碎,有些忘记了一开始理解错在那想不让排序怎么On得出最少奖金,以为做不出来了
查看27道真题和解析
点赞 评论 收藏
分享
自我介绍 从在浏览器输入一个域名到页面完整展示,这整个过程发生了什么?如果是HTTPS协议,相比HTTP有什么不同?TCP三次握手具体做了什么?为什么要三次?HTTPS中的TLS握手过程是怎样的?(四次握手都做了什么?)TLS握手过程中,密钥是如何安全传递的?证书是从哪里请求的?谁颁发的?任何人都可以拿到吗?浏览器如何验证证书的合法性?证书不合格一般有哪些原因?算法题:两数之和(Two Sum),实现最优的解法为什么认为hash解法是时间复杂度最优的?空间复杂度是多少?如果给定数组有序,如何优化?(说了双指针,但是还是On,感觉没优化)算法题:如何对一个无序的单向链表进行排序?给出一个最优实现算法。(第一次说了n方遍历)类似冒泡/选择的排序算法,复杂度是多少?(想了下说了归并排序,子问题是合并两个有序链表)使用归并排序的思路,时间空间复杂度是多少?合并链表时要创建新的链表节点吗?不创建额外空间,直接在原链表上操作可以实现吗?(可以,O1空间复杂度)Cookie和Session在生命周期上有什么区别?Session的存活时间是怎样的,由谁来销毁?Cookie的销毁机制是怎样的?关闭浏览器、重启电脑后它还存在吗?它具体存储在哪里?Cookie一般用在什么场景?JS的垃圾回收(GC)机制是怎样的?垃圾回收是由谁(或什么机制)触发的?讲一下“标记清除”算法的具体过程,它标记的是什么?提到“可达”是什么意思?垃圾回收器如何判断一个变量是否“可达”?(说了检测运行执行栈中的变量,其实应该是从根对象往下遍历)反问PS没问实习和项目,问的点比较细,但是会深挖,挖到两个人谁不会为止一些细节确实还是不够深入,有点磕绊
发面经攒人品
点赞 评论 收藏
分享
评论
7
100
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务