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];
    }
}
相关推荐
wangjialelele4 分钟前
Linux中的进程管理
java·linux·服务器·c语言·c++·个人开发
历程里程碑6 分钟前
普通数组----轮转数组
java·数据结构·c++·算法·spring·leetcode·eclipse
pp起床7 分钟前
贪心算法 | part02
算法·leetcode·贪心算法
sin_hielo7 分钟前
leetcode 1653
数据结构·算法·leetcode
晔子yy15 分钟前
如何设计让你的程序同时处理10w条数据
java
YuTaoShao18 分钟前
【LeetCode 每日一题】3634. 使数组平衡的最少移除数目——(解法二)排序 + 二分查找
数据结构·算法·leetcode
Yvonne爱编码22 分钟前
链表高频 6 题精讲 | 从入门到熟练掌握链表操作
java·数据结构·链表
Q741_14723 分钟前
C++ 优先级队列 大小堆 模拟 力扣 703. 数据流中的第 K 大元素 每日一题
c++·算法·leetcode·优先级队列·
lpfasd12326 分钟前
物联网后端岗位java面试题
java·物联网·php
毕设源码李师姐28 分钟前
计算机毕设 java 基于 java 的图书馆借阅系统 智能图书馆借阅综合管理平台 基于 Java 的图书借阅与信息管理系统
java·开发语言·课程设计