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