面试真题

技术面高频问题 · 企业真题标题 + 校招宝自研参考答案
面试真题
641 道
覆盖企业
49 家
技术方向
16 个
当前筛选
7 道

按技术方向点选即筛,再点「全部」还原

按难度

按企业49 家企业的真题,点选查看该公司全部题目

企业:Momenta7 道 · 点击进入查看参考答案

简单C++
map可以寻址吗?
结论:map不支持像数组那样的常数时间随机寻址(按整数下标访问),但提供按键查找的operator[]。原理:map底层红黑树节点分散在堆上,内存不连续,仅提供双向迭代器而非随机访问迭代器,因此不能通过索引直接跳转;op…
🎤 Momenta
简单C++
vector和array的区别
结论:array是编译期固定大小的栈数组封装,vector是运行时动态大小的堆数组。核心要点:1. 大小:array<T,N>大小N编译确定不可变;vector可动态resize;2. 内存:array通常在栈(或全局区…
🎤 Momenta
中等C++
map的两种扩容方式
结论:std::map基于红黑树,无容量扩容概念,节点动态创建;若指unordered_map,其扩容方式为rehash,常见两种策略:桶数组翻倍(2的幂)或按质数序列递增。原理:map是节点式容器,插入新元素直接分配节…
🎤 Momenta
中等C++
vector处理大规模数据时的优化
结论:主要通过减少内存重分配、降低拷贝开销来优化。核心要点:1. 预先reserve()预留足够容量,避免多次扩容拷贝;2. 使用emplace_back()原地构造对象,减少临时对象拷贝;3. 若数据量超内存,采用分块…
🎤 Momenta
中等Go
生产者、消费者用有缓存channel通信场景,如何让生产者和消费者退出
结论:通过关闭channel或context取消信号协调退出。要点:单生产者时生产完关闭channel,消费者用for v:=range ch读至关闭后退出;多生产者需用WaitGroup等待全部完成再由独立协程关闭;需…
🎤 Momenta
中等Go
golang中哪些数据类型是线程安全的?
结论:Go原生数据类型大多非线程安全,仅channel及借助同步原语包装的类型并发安全。核心要点:1) channel本身线程安全,收发操作原子且同步;2) sync.Mutex等同步类型用于保护资源;3) atomic…
🎤 Momenta
中等操作系统
共享内存的用法以及使用场景
结论:共享内存是进程间通信最快方式,映射同一物理内存免拷贝。用法:1)创建段(shmget/shm_open);2)映射(shmat/mmap);3)进程读写,须配信号量/互斥锁防竞态;4)分离与删除。场景:1)高频大块…
🎤 Momenta
题目整理自公开面经,答案由校招宝自研生成,仅供参考