!-- Loading 底层遮罩 -->

LCS

dp[ i ][ j ]表示字符串S1前 i 个字符与字符串S2前 j 个字符的LCS长度,若对应字符相等,则长度加一,否则继承长度。

    for  ( int  i  =  1 ;  i  <=  len1 ;  i++ )
    {
        for  ( int  j  =  1 ;  j  <=  len2 ;  j++ )
        {
            if  ( S1 [ i ]  ==  S2 [ j ] )
                dp [ i ][ j ]  =  max ( dp [ i ][ j ] ,  dp [ i  -  1 ][ j  -  1 ]  +  1 ) ;
            else  dp [ i ][ j ]  =  max ( dp [ i  -  1 ][ j ] ,  dp [ i ][ j  -  1 ] ) ;
        }
    }
 

 

posted @ 2022-03-30 18:22  Thinker-X  阅读(151)  评论(0)    收藏  举报