interleaving string
来源:互联网 发布:固体力学 知乎 编辑:程序博客网 时间:2024/05/16 08:14
题目描述:
Given s1, s2, s3, find whether s3 is formed by the interleaving of s1 and s2.
For example,
Given:
s1 = "aabcc"
,
s2 = "dbbca"
,
When s3 = "aadbbcbcac"
, return true.
When s3 = "aadbbbaccc"
, return false.
那么状态式定义为:
f[ k ] [ i ] [ j ] = ( f [ k-1 ] [i ] [ j - 1] && s2[ j-1] == s3 [ k -1] // s2的第j-1个字符与s3的第k-1个字符匹配。
或者是 = ( f [ k-1 ] [ i-1 ] [ j ] && s1 [ i-1] == s3 [ k -1] // s1的第i-1个字符与s3的第k-1个字符匹配。
两者只要有一个满足条件即可。
代码如下:
Version 1: 时间复杂度 O(n^3),空间复杂度 O(n^3).Time : ~200ms
Version 2: 时间复杂度 O(n^2),空间复杂度 O(n^2).Time :~ 4ms
Version 3: 时间复杂度 O(n^2),空间复杂度 O(n). Time :~ 4ms
使用滚动数组来解决:
4 0
- Interleaving String
- Interleaving String
- Interleaving String
- Interleaving String
- Interleaving String
- Interleaving String
- Interleaving String
- Interleaving String
- Interleaving String
- Interleaving String
- Interleaving String
- Interleaving String
- Interleaving String
- Interleaving String
- Interleaving String
- Interleaving String
- Interleaving String
- Interleaving String
- poj 4088: 集合运算
- IO流--FileWriter
- poj 4067: 回文数字
- CSDN管理员看过来
- df du
- interleaving string
- poj 3178: 开关电灯
- Static的作用
- 双边滤波(BilateralFilter)原理
- 二叉树层次遍历如何判断当前结点是哪层的?
- EasyExplorer
- P2P穿透软件原理及开放的软件应用使用方法
- 文本分类的数据预处理相关知识介绍
- poj 2677: 肿瘤检测