博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[LeetCode] 97. Interleaving String
阅读量:5872 次
发布时间:2019-06-19

本文共 983 字,大约阅读时间需要 3 分钟。

Problem

Given s1, s2, s3, find whether s3 is formed by the interleaving of s1 and s2.

Example 1:

Input: s1 = "aabcc", s2 = "dbbca", s3 = "aadbbcbcac"

Output: true
Example 2:

Input: s1 = "aabcc", s2 = "dbbca", s3 = "aadbbbaccc"

Output: false

Solution

class Solution {    public boolean isInterleave(String s1, String s2, String s3) {        int l1 = s1.length(), l2 = s2.length(), l3 = s3.length();        if (l1+l2 != l3) return false;        boolean[][] dp = new boolean[l1+1][l2+1];        dp[0][0] = true;        for (int i = 1; i <= l1; i++) dp[i][0] = dp[i-1][0] && s1.charAt(i-1) == s3.charAt(i-1);        for (int j = 1; j <= l2; j++) dp[0][j] = dp[0][j-1] && s2.charAt(j-1) == s3.charAt(j-1);        for (int i = 1; i <= l1; i++) {            for (int j = 1; j <= l2; j++) {                dp[i][j] = dp[i-1][j] && s1.charAt(i-1) == s3.charAt(i+j-1) ||                    dp[i][j-1] && s2.charAt(j-1) == s3.charAt(i+j-1);            }        }        return dp[l1][l2];    }}

转载地址:http://exhnx.baihongyu.com/

你可能感兴趣的文章
MapReduce工作原理流程简介
查看>>
那些年追过的......写过的技术博客
查看>>
小米手机解锁bootload教程及常见问题
查看>>
Python内置函数property()使用实例
查看>>
Spring MVC NoClassDefFoundError 问题的解决方法。
查看>>
CentOS 6.9配置网卡IP/网关/DNS命令详细介绍及一些常用网络配置命令(转)
查看>>
python基础教程_学习笔记19:标准库:一些最爱——集合、堆和双端队列
查看>>
C# 解决窗体闪烁
查看>>
使用Python编写简单的端口扫描器的实例分享【转】
查看>>
ActionFilterAttribute
查看>>
PCM、G.729等常用VoIP编码的理论带宽计算
查看>>
selenium+python自动化92-多线程启动多个不同浏览器
查看>>
【nginx】配置Nginx实现负载均衡
查看>>
20160222.CCPP体系具体解释(0032天)
查看>>
Java面试必问,ThreadLocal终极篇
查看>>
Arduino
查看>>
hostPath Volume - 每天5分钟玩转 Docker 容器技术(148)
查看>>
php数组时按值传递还是按地址传递
查看>>
js向一个数组中插入元素的几个方法-性能比较
查看>>
Tensorflow代码解析(一)
查看>>