# include <stdio.h>
# include <windows.h>
# define MAX(a, b) ((a) > (b) ? (a) : (b))
int LCSubstring1(char * str1, char * str2);
int LCSubstring2(char * str1, char * str2);
int LCSubstring3(char * str1, char * str2);
int main(void){
char * str1 = "bcda";
char * str2 = "abcde";
printf("%d\n", LCSubstring1(str1, str2));
printf("%d\n", LCSubstring2(str1, str2));
printf("%d\n", LCSubstring3(str1, str2));
system("pause");
return 0;
}
int LCSubstring1(char * str1, char * str2){
if(NULL == str1 || NULL == str2)
return 0;
int n = strlen(str1);
int m = strlen(str2);
int ** dp = (int**)calloc((n+1), sizeof(int*));
for(int i = 0; i <= n; i++){
dp[i] = (i
动态规划-最长公共子串
最新推荐文章于 2024-07-24 10:10:28 发布