Java | Leetcode Java题解之第115题不同的子序列

题目:

题解:

java 复制代码
class Solution {
    public int numDistinct(String s, String t) {
        int m = s.length(), n = t.length();
        if (m < n) {
            return 0;
        }
        int[][] dp = new int[m + 1][n + 1];
        for (int i = 0; i <= m; i++) {
            dp[i][n] = 1;
        }
        for (int i = m - 1; i >= 0; i--) {
            char sChar = s.charAt(i);
            for (int j = n - 1; j >= 0; j--) {
                char tChar = t.charAt(j);
                if (sChar == tChar) {
                    dp[i][j] = dp[i + 1][j + 1] + dp[i + 1][j];
                } else {
                    dp[i][j] = dp[i + 1][j];
                }
            }
        }
        return dp[0][0];
    }
}
相关推荐
重生之后端学习2 分钟前
105. 从前序与中序遍历序列构造二叉树
java·数据结构·后端·算法·深度优先
样例过了就是过了2 分钟前
LeetCodere热题100 最小覆盖子串
数据结构·算法·leetcode
前路不黑暗@2 分钟前
Java项目:Java脚手架项目的地图的POJO
android·java·开发语言·spring boot·学习·spring cloud·maven
2501_926978334 分钟前
分形时空理论框架:从破缺悖论到意识宇宙的物理学新范式引言(理论概念版)--AGI理论系统基础1.1
java·服务器·前端·人工智能·经验分享·agi
西门吹雪分身4 分钟前
K8S之Pod调度
java·容器·kubernetes·k8s
弹简特4 分钟前
【JavaEE08-后端部分】SpringMVC03-SpringMVC第二大核心处理请求之Cookie/Session和获取header
java·spring boot·spring·java-ee
追随者永远是胜利者5 分钟前
(LeetCode-Hot100)10. 正则表达式匹配
java·算法·leetcode·go
We་ct6 分钟前
LeetCode 146. LRU缓存:题解+代码详解
前端·算法·leetcode·链表·缓存·typescript
努力学算法的蒟蒻15 分钟前
day87(2.16)——leetcode面试经典150
数据结构·leetcode·面试
追随者永远是胜利者18 分钟前
(LeetCode-Hot100)17. 电话号码的字母组合
java·算法·leetcode·职场和发展·go