Tabulation
class Solution { public: int longestCommonSubsequence(string text1, string text2) { int m=text1.size(); int n=text2.size(); int dp[m+1][n+1]; memset(dp,0,sizeof dp); //tabulation approach for(int i=1;i<=m;i++) { for(int j=1;j<=n;j++) { if(text1[i-1]==text2[j-1]) dp[i][j]=1+dp[i-1][j-1]; else dp[i][j]=max(dp[i-1][j],dp[i][j-1]); } } return dp[m][n]; } };
Top comments (0)