首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
我是二哈
浙江外国语学院 Java
发布于浙江
关注
已关注
取消关注
@Gxin316:
最长公共子序列
AC代码:class Solution {public: int longestCommonSubsequence(string text1, string text2) { int dp[1005][1005] = {0}; int n = text1.size(); int m = text2.size(); for (int i = 1; i <= n; i++){ for (int j = 1; j <= m; j++){ if (text1[i-1] == text2[j-1]) dp[i][j] = 1 + dp[i-1][j-1]; else{ dp[i][j] = max(dp[i][j-1], dp[i-1][j]); } } } return dp[n][m]; }};1.max里面为何只有两种情况,为何不需要比较dp[i-1][j-1]的情况?原因:dp[i][j-1]的值与dp[i-1][j]的值都一定大于等于dp[i-1][j-1]所以无需判断。2.编写代码输出 最长公共子序列的长度、其中一个最长公共子序列。代码:#include<bits/stdc++.h>using namespace std;typedef long long ll;#define ios ios::sync_with_stdio(false);cin.tie(0);cout.tie(0)string text1, text2;int dp[1005][1005] = {0};int longestCommonSubsequence(string text1, string text2) { int n = text1.size(); int m = text2.size(); // 不再重新定义 dp,直接使用全局 dp 数组 for (int i = 1; i <= n; i++) { for (int j = 1; j <= m; j++) { if (text1[i-1] == text2[j-1]) dp[i][j] = 1 + dp[i-1][j-1]; else dp[i][j] = max(dp[i][j-1], dp[i-1][j]); } } return dp[n][m];}void print(int i, int j) { if (i == 0 or j == 0) return; if (dp[i][j] == dp[i - 1][j - 1] + 1) { print(i - 1, j - 1); cout << text1[i - 1]; } else if (dp[i][j] == dp[i - 1][j]) { print(i - 1, j); } else { print(i, j - 1); }}int main() { ios; cin >> text1 >> text2; int n = text1.size(); int m = text2.size(); cout << longestCommonSubsequence(text1, text2) << '\n'; // 输出 LCS 长度 print(n, m); // 通过递归函数打印 LCS cout << '\n'; return 0;}通过递归函数从LCS末尾开始溯源。当dp[i][j] == dp[i - 1][j - 1] + 1说明上一位置在当前位置的左上角,当dp[i][j] == dp[i - 1][j]说明上一位置在当前位置的左边,当dp[i][j] == dp[i][j - 1]说明上一位置在当前位置的上边,
点赞 2
评论 1
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
11-02 01:05
门头沟学院 Java
60min途虎养车JAVA一面
一面 1.项目中在库存扣减完成后,会将订单信息吸入数据库,并更新数据库中的用户参与订单。 2.项目中缓存与数据库的一致性是如何实现的 3.操作系统中的内存管理,分段机制,分页机制,优缺点 4.项目中用到了哪些索引 5,AOP什么场景下会失效 6.项目中的组件有哪些 7.ChatClient 对话客户端是如何实例化的 8.手撕,印象中是hoot100中的中等题
查看7道真题和解析
点赞
评论
收藏
分享
11-04 10:54
学而思_学科教育管理(准入职员工)
学而思内推,学而思内推码
【总面试流程】初试+复试&面谈+岗前培训+签约offer,可能因为现在都在秋招,所以我走了校招流程,其实应该大致都差不多,只是我多参加了一个宣讲会,昨天收到面试未通过的消息,止步于复试&面谈。 1、初试:关注微信公众号:广州学而思校园招聘,里面有相应的题目,选择你面试科目对应的题即可,英语老师是模仿一个三分钟的视频,其实我觉得这个是比较简单,自信大方地上去讲就好了,可能要多注意和学生的互动,不要只站在讲台上。 2、复试&面谈:其实至今思前想后,都觉得自己表现很好,复试和初试一样,还是讲你模仿的视频,我还根据初试时,一位男面试官在初试结束后,给我们表演了一段他怎么讲的,...
点赞
评论
收藏
分享
09-24 10:27
焦作工贸职业学院 Java
双非秋招情况
作为一个27届的双非,看着今年26届双非秋招的惨状感觉有点痛苦,原先主播在找到第二段实习的时候还很开心,但是看到一个个27的大佬们都找到atmd以及快手小红书的实习还是有点焦虑。焦虑自己明年秋招的情况,因为今年也有很多双非带大厂实习没有拿到offer,明年情况是不是会更糟😢,想问一下现在双非大佬们手里的offer情况呀
我的offer呢😡:
这不才9月吗,26到明年毕业前能一直找啊
,能拿下提前批,转正的,offer打牌的都是有两把刷子的,为什么非要跟他们比。如果别人是9本硕+金牌+好几段大厂实习呢?如果别人是双非通天代呢?如果别人是速通哥呢?,做好自己就行了,我们做不到他们一样提前杀死比赛,但晚点到终点也没啥关系吧
双非应该如何逆袭?
点赞
评论
收藏
分享
09-15 11:59
门头沟学院 Java
面评脏了吗
今天boss上直接联系hr,投字节,结果和我说之前面试过其他岗位,通过概率就不大了呜呜呜,怎么这样,是我上次面试评价很不好吗,太难了,给个机会吧呜呜呜,伤心
mmvvpp:
可能是你命令的口吻让人很不舒服
一起聊字节
点赞
评论
收藏
分享
11-02 17:30
中南大学 Java
准备找第一份Java实习
目前已保研本校,准备找第一份实习,目标是中小厂的后端开发,想问问简历有什么需要改进的地方吗,或者有其他的什么建议吗
com_whiter:
中南大学加大加粗
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
数字马力一面(已挂)
2960
2
...
那个敢跟leader对线的实习生,现在怎样了
2882
3
...
27找实习,简历求拷打
1899
4
...
实习才知道原来攒钱这么不容易(给新人小白)
1693
5
...
转测开是我大学生涯做过最正确的选择
1693
6
...
数字马力 一面
1690
7
...
字节业务中台后端开发一面
1677
8
...
中兴逼签要接吗?最纠结的一集
1555
9
...
数字马力一面
1467
10
...
面试官你是来骗方案了吧?休想
1369
创作者周榜
更多
正在热议
更多
#
同bg的你秋招战况如何?
#
173487次浏览
1016人参与
#
2022毕业即失业取暖地
#
115713次浏览
702人参与
#
联影求职进展汇总
#
50631次浏览
322人参与
#
你实习是赚钱了还是亏钱了?
#
28964次浏览
236人参与
#
CVTE求职进展汇总
#
22472次浏览
319人参与
#
用一句话形容你的团队氛围
#
17638次浏览
177人参与
#
京东开奖
#
466643次浏览
2662人参与
#
哪些公司校招卡第一学历
#
219594次浏览
775人参与
#
牛客租房专区
#
122227次浏览
1347人参与
#
嵌入式岗知多少
#
58189次浏览
548人参与
#
联影医疗求职进展汇总
#
5379次浏览
24人参与
#
毕业论文进行时
#
6075次浏览
80人参与
#
机械人与华为的爱恨情仇
#
136715次浏览
1011人参与
#
58同城求职进展汇总
#
39639次浏览
263人参与
#
我来点评面试官
#
15594次浏览
110人参与
#
找实习你看重大厂光环还是业务方向
#
40992次浏览
163人参与
#
面对逼签的应对技巧
#
6336次浏览
33人参与
#
扒一扒那些奇葩实习经历
#
126133次浏览
1098人参与
#
今年秋招是回暖还是遇冷
#
29681次浏览
187人参与
#
腾讯音乐求职进展汇总
#
135463次浏览
1004人参与
#
实习返校后,你的精神状态是__?
#
36877次浏览
153人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务