百度C++ 二面

二面主要考的算法,这里把两个算法题拿出来,这两个开放式问题大家一起想想方法。
1.给定一个字符串,要求把字符串中偶数位数的子回文串删掉;注意,回文串删除后生成新偶数位数的子回文串也需要被删掉。返回最终删除后的字符串。
2.给定一个二维数组,已知两个节点x y,二维数组的每一行的起点终点均为x y,二维数组的每一行代表了x到y的每一条路线。因为路线中间可能有一些点重合,所以x到y的路线数肯定比行数要多。求x到y的路线数。#百度信息集散地#
全部评论
第一个用栈?遍历原字符串,依次入栈,入栈前判断当前栈顶字符是否与当前遍历到的字符相同,相同则出栈,并将遍历指针向后移一位,遍历完成之后,栈中元素出栈后再逆序排列即为答案,这种算法是否能完成题目的要求呢?
4 回复 分享
发布于 2023-08-05 16:34 湖北
第二题好像23年浙江大学预推免的笔试题啊
2 回复 分享
发布于 2023-08-05 23:17 广东
第一道题是动态规划加递归吧,第二道题就是动态规划?
点赞 回复 分享
发布于 2023-08-05 20:51 广东
第一个问题不太懂,如果不断删除,最终是不是只剩下第一个字符?
点赞 回复 分享
发布于 2023-08-05 14:09 福建

相关推荐

03-24 13:35
门头沟学院 Java
攒攒人品!有面试过同岗的朋友欢迎评论区交流1.实习拷打2.项目拷打3.你们的 Agent 是单 Agent 还是多 Agent?为什么这么设计?有没有考虑过另一种方案?4.Agent 任务是怎么拆分的?拆分粒度是怎么决定的?5.上下文是怎么构建的?你们怎么避免上下文过长或者信息污染?6.如果上下文窗口不够,你优先保留哪些信息?为什么?7.你们做代码理解的时候,AST、调用关系这些信息是怎么用起来的?8.单测生成里,哪些代码其实不适合生成单测?你们是怎么识别并过滤的?9.覆盖率高但测试质量很差,这种情况你见过吗?你们是怎么解决的?10.mock在单测里什么时候是必须的?什么时候反而会带来问题?11.如果一个函数依赖数据库和RPC,你怎么让模型生成的单测还能稳定运行?12.你们怎么评估生成单测的质量?除了覆盖率,还有哪些指标?13.LLM的输入到底是什么?模型真正看到的是什么?14.self attention的核心作用是什么,为什么要拆成 QKV?为什么attention 可以建模长距离关系,15.为什么需要multi-head为什么 attention可以看成动态加权16.同一个 token的 Q、K、V 为什么不一样?17.attention复杂度很高,如果上下文特别长,你会怎么优化?18.模型产生幻觉的时候,一般是什么原因?工程上有什么办法降低19.Python有多线程吗?GIL 是干什么的?什么时候多线程是有用的?20.讲一下C++从源码到可执行文件的流程。21.手撕:给定数组的区间中位数之和:给定一个长度为n的数nums,一个区间 [l, r] 的 中位数 为:如果区间长度是奇数:排序后中间的数,如果是偶数:排序后靠左的那个数,要求:计算所有子数组的中位数之和
点赞 评论 收藏
分享
一共四道题,我是菜狗,全都没有100%,最后一道题没做出来第一道题:一个班有N个学生,如果上课之前到场人数少于K,这节课就取消,给你NK和全班人到班里的时间,让你判断这节课会不会被取消e.ginput :N4K3   时间:-1 -3 4 2  ==>YES  会被取消,因为0时刻到班俩人我感觉就是盘有多少大于0的数字,看这个数是不是比K小就行,一开始只有60%,加了个K>N输出YES就80%,然后我就想不到别的情况了,欢迎大佬评论区指导!!!第二题:有点像斐波那契,f(i+2)=f(i)+f(i+1)*f(i+1),让你求f(n)input:f(1) f(2) n    0<=f1,f2<=2   3<=n<=12我直接递归的,只有60%,一个是longlong会溢出,还有应该可能是内存占用太大 ?第三题:有A、B、C、三个数组,每次从两个数组中选一个元素进行删和减操作,比如从A里选a,B里选b,然后B删掉b,A里的a变成a-b,问你最后留下来的数组元素之和最大是多少input: 2 4 1(三个数组的长度,题里的输入是三行,我直接写一行里了哈)1 2(第一个) 6 3  4 5(第二个)5(第三个)output:20个人觉得,就是三个数组元素之和,先选个max mid 和min,然后return  mid-(min-max);然后mid = sum1+sum2+sum3-max-min,带进去就是return sum1+sum2+sum3-2*min,但是只有50%第四题:我感觉可能和bfs/dfs有关,可以做出来,但是我的脑子,em,不好形容题目:给你一个全排列序列(题目就是这样说的我记得,其实就是1~n的乱序),让你找1~n阶完美序列,举个例子吧序列L:4 5 1 3 2 6下标i:0 1 2 3 4 51阶 就是包含12阶 就是连续的两个位置包含1和2 这个序列的1和2被3隔开了,所以没有2阶3阶 L[2~4]连续包含123,虽然是132,但是算作完美序列以此类推最后输出是一串01字符,一阶有为1,二阶没有为0,三阶有为1,所以这三阶的输出就是101我的想法是以1为中心,向两边去找,用一个count标记小于等于阶数的个数,边界不合法break,遇到比阶数大的break,但是通过率0比如说我找3阶,1的左边是5,5>3,所以左边的搜索到此为止,1<3,count++,继续,右边3不大于3,count++,继续搜索,2<3,count++,继续,6>3,break,最终count=3=阶数,那么存在3阶完美序列唉,还是算法题做得不够,小菜狗只能到这个程度了,欢迎大佬评论区指点!!!!!
查看8道真题和解析
点赞 评论 收藏
分享
评论
6
47
分享

创作者周榜

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