首页 > 其他 > 详细

1 最长公共子序列(just work 递归实现)

时间:2015-05-13 18:54:54      阅读:226      评论:0      收藏:0      [点我收藏+]
 1 #include<stdlib.h>
 2 #include<stdio.h>
 3 int lcs(char a[], char b[],int na,int nb,int j);
 4 int main(void){
 5     char a[]="abcdefg";
 6     char b[]="bdcedeabf";
 7     int na=7;
 8     int nb=9;
 9     int j=0;
10     int l=lcs(a,b,na,nb,j);
11     printf("%d",l);
12     return 0;
13 }
14 
15 int lcs(char a[], char b[],int na,int nb,int j){
16     if(na==0 || nb==0){
17         return j;
18     }
19     if(a[na-1]==b[nb-1]){
20         return lcs(a,b,na-1,nb-1,j+1);
21     }else{
22         int left = lcs(a,b,na-1,nb,j);
23         int right = lcs(a,b,na,nb-1,j);
24         return left>right?left:right;
25     }
26 }

 

1 最长公共子序列(just work 递归实现)

原文:http://www.cnblogs.com/mozhuhao/p/4500759.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!