编程语言
首页 > 编程语言> > Leetcode1143. 最长公共子序列(c#)

Leetcode1143. 最长公共子序列(c#)

作者:互联网

 

题解:力扣

public class Solution
 {
    public int LongestCommonSubsequence(string text1, string text2)
    {
        int num1 = text1.Length;
        int num2 = text2.Length;
        int[,] dp = new int[num1 + 1,  num2 + 1];
        for(int i = 0; i < num1; i++)
        {
            for(int j = 0; j < num2; j++)
            {
                if(text1[i] == text2[j])
                {
                    dp[i + 1, j + 1] = dp[i, j] + 1;
                }
                else
                {
                    dp[i + 1, j + 1] = Max(dp[i, j + 1], dp[i + 1, j]);
                }
            }

        }
        return dp[num1, num2];
    }

    private int Max(int a, int b)
    {
        if(a > b)
            return a;
        else
            return b;    
    }

}

标签:text2,return,num1,num2,c#,Leetcode1143,int,序列,dp
来源: https://blog.csdn.net/yinfourever/article/details/121239551