leetcode 392 判断子序列

简介: leetcode 392 判断子序列

判断子序列


f9633ad8b1cd4581a63dd557837ae500.png

动态规划

class Solution {
public:
    bool isSubsequence(string s, string t) {
        if(s.size()==0&&t.size()!=0) return true;
        if(s.size()==0&&t.size()==0) return true;
        if(s.size()!=0&&t.size()==0) return false;
        vector<bool> dp(s.size() , false);
        int prt = 0;//匹配指针
        for(int i=0 ; i<t.size() ;i++)
        {
            if(s[prt] == t[i])//匹配成功标记,匹配下一个
            {
                dp[prt] = true;
                prt++;
            }
        }
        return dp[s.size()-1];
    }
};

二刷

class Solution {
public:
    bool isSubsequence(string s, string t) {
        vector<vector<int>> dp(s.size()+1 , vector<int>(t.size()+1 , 0));
        for(int i=1 ; i<=s.size() ;i++)
        {
            for(int j=1 ; j<=t.size() ;j++)
            {
                if(s[i-1] == t[j-1]) dp[i][j]  = dp[i-1][j-1] + 1;
                else dp[i][j] = max(dp[i-1][j] , dp[i][j-1]);
                // cout<<dp[i][j]<<' ';
            }
            // cout<<endl;
        }
        if(dp[s.size()][t.size()] == s.size()) 
            return true;
        else 
            return false;
    }
};
相关文章
|
1月前
代码随想录 Day46 动态规划14 LeetCode T392 判断子序列 T115 不同的子序列
代码随想录 Day46 动态规划14 LeetCode T392 判断子序列 T115 不同的子序列
41 0
|
1月前
|
算法 Java
[Java·算法·简单] LeetCode 392. 判断子序列 详细解读
[Java·算法·简单] LeetCode 392. 判断子序列 详细解读
44 0
|
8月前
【Leetcode -575.分糖果 -594.最长和谐子序列】
【Leetcode -575.分糖果 -594.最长和谐子序列】
38 0
|
8月前
【Leetcode -389.找不同 -392.判断子序列】
【Leetcode -389.找不同 -392.判断子序列】
36 0
|
5天前
|
存储
力扣-2904最短且字典序最小的美丽子序列
力扣-2904最短且字典序最小的美丽子序列
6 1
|
6天前
|
存储 自然语言处理 算法
LeetCode题目115:不同子序列
LeetCode题目115:不同子序列
|
11天前
|
算法 Java Go
【经典算法】LeetCode 392 判断子序列(Java/C/Python3/Go实现含注释说明,Easy)
【经典算法】LeetCode 392 判断子序列(Java/C/Python3/Go实现含注释说明,Easy)
14 0
|
1月前
|
算法
代码随想录算法训练营第五十六天 | LeetCode 647. 回文子串、516. 最长回文子序列、动态规划总结
代码随想录算法训练营第五十六天 | LeetCode 647. 回文子串、516. 最长回文子序列、动态规划总结
37 1
|
1月前
|
测试技术
【力扣】392.判断子序列
【力扣】392.判断子序列
|
1月前
|
Java
leetcode 516. 最长回文子序列(JAVA)题解
leetcode 516. 最长回文子序列(JAVA)题解
31 0