随想录算法训练营第五十四天|392.判断子序列、115.不同的子序列

392.判断子序列

public class Solution {
    public bool IsSubsequence(string s, string t) {
        if(s.Length==0)
        {
            return true;
        }
        int k=0;
        for(int i=0;i<t.Length;i++)
        {
            if(s[k]==t[i])
            {
                k++;
                
            }
            if(k==s.Length)
            {
                return true;
            }
            
        }
        return false;
    }
}

采用双指针,一个指针指向S的第一个元素,另一个指向T的第一个元素,采用一个For循环,字符串T到末尾就结束循环。在循环中如果两个元素相同,S的指针就后移一位,如果K指针来到S的末尾就返回True,否则都是False。

115.不同的子序列

public class Solution {
    public int NumDistinct(string s, string t) {
        char[]s1=s.ToCharArray();
        char[]t1=t.ToCharArray();
        int[,] dp=new int[s1.Length+1,t1.Length+1];
        for(int i=0;i<s1.Length;i++)
        {
            dp[i,0]=1;
        }
        for(int j=1;j<t1.Length;j++)
        {
            dp[0,j]=0;
        }
        for(int i=1;i<=s1.Length;i++)
        {
            for(int j=1;j<=t1.Length;j++)
            {
                if(s1[i-1]==t1[j-1])
                {
                    dp[i,j]=dp[i-1,j-1]+dp[i-1,j];
                }else
                {
                    dp[i,j]=dp[i-1,j];
                }
            }
        }
        return dp[s1.Length,t1.Length];
    }
}

Dp[i,j]表示以I-1结尾的S串中有以J-1为尾的个数。如果两个元素相同,Dp[i,j]=Dp[i-1,j-1]+Dp[i-1,j]上一个状态加上S串除开最后一个元素之前的结果。

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-12 04:54:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-12 04:54:02       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-12 04:54:02       82 阅读
  4. Python语言-面向对象

    2024-03-12 04:54:02       91 阅读

热门阅读

  1. C 语言中 #define 预处理器指令

    2024-03-12 04:54:02       37 阅读
  2. oracle 19c数据库联机备份与恢复

    2024-03-12 04:54:02       43 阅读
  3. 一些使用 Golang 实现的反沙箱技术 - Anti-Sandbox-Go

    2024-03-12 04:54:02       37 阅读
  4. OpenCV-环境搭建及基本IO接口

    2024-03-12 04:54:02       40 阅读
  5. 96.Go设计优雅的错误处理(带堆栈信息)

    2024-03-12 04:54:02       38 阅读
  6. Vue 双向数据绑定

    2024-03-12 04:54:02       40 阅读
  7. 开发指南002-前后端信息交互规范-返回值定义

    2024-03-12 04:54:02       49 阅读
  8. 常用的推荐算法

    2024-03-12 04:54:02       46 阅读