阿里钉钉客户端C++面经

背景:本硕9 非科班 项目是webserver和json解析器
一面(70min)3.21
1.自我介绍
2.select epoll poll的区别
3.哈希map的特性(和map的区别
4.出现死锁的条件
5.只有一个互斥量和一个线程的时候会发生死锁吗(这个有点没太理解,说了一下迭代锁和非迭代锁)
6.线程和进程的区别。
7.线程管理的范围(线程资源的管理范围)
8.extern的作用,extern “C”的作用
9.静态库和动态库的区别
10.动态库相比静态库的优劣
11.http与https的区别
12.https在什么情况下不安全(这里提到了中间人攻击,当时回答的不是很了解)
13.tcp和udp的区别
14.tcp和udp的哪一个会是未来更大的一个方向。
15.dns协议
16.c++右值引用,完美转发
17.linux和win上编程的差异
18.对面向对象的编程和面向接口的编程的理解
19.解释一下中断机制
20.询问了一下json解析器的实现效果
21.mysql中innodb的最大的特性
22.上学期间最大的收获。
23.反问。
一面由于面试官有事情,手撕代码另外约了一天 。
手撕代码考了两个
1.     手写memcpy,要考虑内存重叠的情况
2.     Lc 原题,找重复出现的数,没有要求时间复杂度,可以用排序秒
全部评论
Hr面(30min)3.30 1.自我介绍 2.为什么选择钉钉音视频客户端 3.大学为什么会选择这个专业 4.专业课有哪些 5.大学成绩怎么样 6.大学中你觉得比较有挑战的项目 7.平常喜欢关注什么技术 8.个人的规划 9.有没有女朋友之类的 10.平时有练习代码吗 11.研究生工作重不重 12.研究生导师对你的评价 13.反问阶段。 4.6 邮箱收到意向书
2 回复 分享
发布于 2023-04-06 19:09 江苏
二面(60min)3.28 1.     部门业务介绍 2.     自我介绍 3.     让介绍自己的项目,并且说一下几个项目的最终实现效果。(这里问了一下项目的压测怎么实现的) 4.     讲讲 json解析器为什么用variant 5.     一个类没有定义任何方法,编译器会生成那些方法 6.     讲一讲虚指针如何实现 7.     Stl中map的数据结构 8.     Map中key的特点,我们怎么去构造这样一个key(这点没搞明白) 9.     Remove与erase的区别 10.   动态链接和静态链接的区别 11.   讲讲类特化 12.   Hashmap的实现原理 13.   二分查找算法 14.   优先队列是怎么实现的 15.   进程间的同通信方式 16.   讲讲http中那有些请求方法 17.   讲讲http中的状态码 18.   有接触过qt的开发吗 19.   开放性问题:扫码登录的实现过程。 20.   个人的一些规划 21.   手撕: Eazy题,要求15分钟内做出来:一共有100瓶啤酒,3个空瓶可以换1瓶啤酒,7个瓶盖可以换一瓶啤酒,一共可以喝多少瓶啤酒? 这个当时直接模拟了,没能想到更简单的方法。
2 回复 分享
发布于 2023-04-06 19:08 江苏
楼主这是实习还是春招
点赞 回复 分享
发布于 2023-06-21 16:15 江苏
感谢楼主
点赞 回复 分享
发布于 2023-04-15 22:27 江苏
感谢分享
点赞 回复 分享
发布于 2023-04-09 15:34 河北
你就是我的神😍
点赞 回复 分享
发布于 2023-04-06 20:12 江苏

相关推荐

04-10 13:13
门头沟学院 Java
1.自我介绍2.深度参与项目,产出3.OCR为撒做文件识别;部署的哪个4.传统的读取pdf docx api sdk有用过吗5.文本内容为啥还要用ocr6.pdf 图片内容;图片,图表的理解,怎么做;饼状图,折线图怎么提取语义信息7.ocr背后的原理,给一个饼图,然后怎么输出内容8.是否真的了解怎么识别 占比 类比这样的语义识别9.有看过ocr调用,语义保留这样的指标的评估10.怎么做评估;完全识别的指标又是怎么评估;九十分一百分怎么打分完全识别11.图表识别怎么评估打分,怎么评判,有哪些依据12.为啥选768维度13.讲下embedding模型,怎么做embedding14.embedding模型底层;什么是token;为撒100wtoken最大token数15.大语言模型参数了解吗;在显存消耗的哪个层面消耗的16transfomer词表是怎么构建的吗17.ES怎么构建的;这里面的关键词怎么构建的;BM25基于什么原理18.一部分milvus语义召回,一部分ES关键词召回;怎么返回用户的19.精排维度是多少,原理是什么20.rerank精排基于什么;为撒精排效果更好21.你觉得这些策略涉及有哪些问题;讲了四个问题权重;向量维度;双向量检索的策略;切分策略(切分维度)22.针对上述的你提的问题,说出自己解法23.最核心的一个指标的什么;最核心的指标;归纳出最核心的一个综合指标24.function calling mcp skill,解释概念;用到什么场景;分别解决了什么问题答得不好25.prompt engining ,context  engining,hareness enginering 解释什么问题答得不好26.抽象类和接口却别27.jvm内存回收;什么情况下适合标记清除,什么标记整理28存活时间怎么定义这里列下六个ai概念和解释24. Function Calling、MCP、Skill:概念、场景与解决的问题这三个概念其实代表了 AI 智能体(Agent)与工具交互的三个不同层级:底层协议、通信标准、业务封装。1. Function Calling (函数调用)概念:这是大模型的一种底层能力。它让模型不仅能输出文本,还能输出结构化的数据(如 JSON),告诉程序“我要调用哪个函数,参数是什么”。解决的问题:解决了“模型说不清楚,程序读不懂”的问题。它打破了模型只能聊天的限制,让模型有了“手”,能触发外部动作。场景:简单的工具调用:查天气、计算器、查询数据库。提取结构化信息:把用户的一段话转换成 JSON 对象。2. MCP (Model Context Protocol,模型上下文协议)概念:由 Anthropic 提出的标准化通信协议。你可以把它理解为 AI 界的 USB-C 接口。它定义了一套标准,让 AI 应用(Client)能统一地连接到各种数据源和工具(Server)。解决的问题:解决了“连接碎片化”和“上下文孤岛”的问题。以前每接一个工具都要写一套适配代码,现在只要工具支持 MCP 协议,AI 就能直接连,不用重复造轮子。场景:企业级应用集成:统一连接本地文件、Google Drive、Slack、GitHub 等。跨平台工具共享:开发者开发一个 MCP Server,所有支持 MCP 的 AI 客户端都能用。3. Skill (技能)概念:这是面向业务的能力封装。它通常是一个包含指令、脚本、资源和提示词的“文件夹”或集合。Skill 往往基于 Function Calling 构建,但更复杂。解决的问题:解决了“工具零散,无法完成复杂业务”的问题。它把一个个原子化的函数(如“查航班”、“查酒店”)组合成一个有意义的业务能力(如“订机酒套餐”)。场景:复杂任务处理:比如“帮我策划一次旅行”,Skill 会自动规划步骤,依次调用查天气、订机票、订酒店的函数。垂直领域专家:比如“法律助手 Skill”,里面封装了查法条、写文书的特定流程和提示词。📌 总结对比表表格概念本质定位核心解决问题形象比喻Function Calling底层交互协议模型输出结构化指令神经信号(告诉手要动)MCP通信与调度层统一连接标准,避免重复开发USB 接口(通用插头)Skill业务能力层复杂任务编排与封装操作手册(怎么做菜)🧠 25. Prompt Engineering、Context Engineering、Harness Engineering这三个概念代表了 AI 应用开发从“手工作坊”到“系统工程”的进化过程。1. Prompt Engineering (提示词工程)解释:这是最早期的阶段。核心是“写咒语”。通过精心设计自然语言指令(如“你是一个专家,请一步步思考...”),引导模型输出更好的结果。局限:它是一次性的、静态的。如果任务太复杂,光靠一段话很难控制模型。2. Context Engineering (上下文工程)解释:这是目前的主流趋势。核心是“构建信息流水线”。它不再只关注那一句提示词,而是关注如何把最有效的信息(知识、历史、工具描述)在恰当的时机喂给模型。它包括 RAG(检索增强)、记忆管理、摘要压缩等技术。解决问题:解决了模型“记性差”、“知识过时”和“幻觉”问题。它把模型从一个“聊天机器人”变成了一个“拥有外部知识库的专家”。3. Harness Engineering (编排工程/智能体工程)注:Harness 在这里通常指“智具编排”或“系统 harness”,类似于 LangChain 或 AutoGen 这类框架所做的工作。解释:这是最高阶的阶段。核心是“系统级管控”。它不仅仅是给信息,而是设计一个工作流。比如:先让模型 A 写代码,再让模型 B 审查代码,如果报错再让模型 A 修改。它涉及多智能体协作、循环反馈、工具调用的逻辑编排。解决问题:解决了复杂任务的自动化执行和可靠性问题。📌 一句话总结进化史Prompt Engineering:教模型“怎么说话”。Context Engineering:给模型“参考资料和记忆”。Harness Engineering:给模型“ teammates(队友)和工作流程”。
查看28道真题和解析
点赞 评论 收藏
分享
评论
20
114
分享

创作者周榜

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