c++求两个字符串的最长公共子序列and子串
Posted 出发的兰彻
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c++求两个字符串的最长公共子序列and子串相关的知识,希望对你有一定的参考价值。
https://blog.csdn.net/ggdhs/article/details/90713154
#include <iostream> using namespace std; int main() { char str1[] = "helloworld"; char str2[] = "loop"; int arr[11][5] = {0}; for(uint32_t i=1; i<11;i++) { cout << str1[i-1] << endl; for(uint32_t j=1; j<5;j++) { cout<< str2[j-1]; if (str1[i-1] == str2[j-1]) { arr[i][j] = arr[i-1][j-1] + 1; } else {
// 公共子序列 arr[i][j] = max(arr[i-1][j], arr[i][j-1]); // 公共字串
// arr[i][j] = 0; } } cout << endl; } for(uint32_t i=0; i<11;i++) { for(uint32_t j=0; j<5;j++) { cout<<arr[i][j]; } cout<<endl; } return 0; }
以上是关于c++求两个字符串的最长公共子序列and子串的主要内容,如果未能解决你的问题,请参考以下文章