LintCode-不同的子序列
题目描述:
给出字符串S和字符串T,计算S的不同的子序列中T出现的个数。
子序列字符串是原始字符串通过删除一些(或零个)产生的一个新的字符串,并且对剩下的字符的相对位置没有影响。(比如,“ACE”是“ABCDE”的子序列字符串,而“AEC”不是)。
给出S = "rabbbit", T = "rabbit"
返回 3
动态规划想不明白,用递归做的。
 public class Solution {
     public int num = 0;
     /**
      * @param word1 & word2: Two string.
      * @return: The minimum number of steps.
      */
      public int numDistinct(String S, String T) {
             // write your code here
             find(S,T,0,0);
             return num;
         }
         public void find(String S,String T,int index,int from){
             if(index ==  T.length()){
                 num++;
                 return;
             }
             for(int i=from;i<S.length();i++){
                 if(S.charAt(i) == T.charAt(index))
                     find(S,T,index+1,i+1);
             }
         }
 }
LintCode-不同的子序列的更多相关文章
- lintcode 最长上升连续子序列 II(二维最长上升连续序列)
		题目链接:http://www.lintcode.com/zh-cn/problem/longest-increasing-continuous-subsequence-ii/ 最长上升连续子序列 I ... 
- C++版 - Lintcode 77-Longest Common Subsequence最长公共子序列(LCS) - 题解
		版权声明:本文为博主Bravo Yeung(知乎UserName同名)的原创文章,欲转载请先私信获博主允许,转载时请附上网址 http://blog.csdn.net/lzuacm. C++版 - L ... 
- LintCode 77: 最长公共子序列
		public class Solution { /** * @param A, B: Two string. * @return: the length of the longest common s ... 
- [LintCode] Longest Increasing Subsequence 最长递增子序列
		Given a sequence of integers, find the longest increasing subsequence (LIS). You code should return ... 
- [LintCode] Longest Increasing Continuous Subsequence 最长连续递增子序列
		Give an integer array,find the longest increasing continuous subsequence in this array. An increasin ... 
- lintcode:最长公共子序列
		题目 最长公共子序列 给出两个字符串,找到最长公共子序列(LCS),返回LCS的长度. 样例 给出"ABCD" 和 "EDCA",这个LCS是 "A& ... 
- lintcode:最长上升子序列
		题目 最长上升子序列 给定一个整数序列,找到最长上升子序列(LIS),返回LIS的长度. 样例 给出[5,4,1,2,3],这个LIS是[1,2,3],返回 3 给出[4,2,4,5,3,7],这个L ... 
- lintcode 中等题 :Maximum Product Subarray 最大连续乘积子序列
		题目 乘积最大子序列 找出一个序列中乘积最大的连续子序列(至少包含一个数). 样例 比如, 序列 [2,3,-2,4] 中乘积最大的子序列为 [2,3] ,其乘积为6. 解题 法一:直接暴力求解 时 ... 
- lintcode :最长上升连续子序列
		题目: 最长上升连续子序列 给定一个整数数组(下标从 0 到 n-1, n 表示整个数组的规模),请找出该数组中的最长上升连续子序列.(最长上升连续子序列可以定义为从右到左或从左到右的序列.) 样例 ... 
- lintcode 77.Longest Common Subsequence(最长公共子序列)、79. Longest Common Substring(最长公共子串)
		Longest Common Subsequence最长公共子序列: 每个dp位置表示的是第i.j个字母的最长公共子序列 class Solution { public: int findLength ... 
随机推荐
- 从零开始学习UNITY3D(GUI篇 群组视图控件)
			控件组可以看成一个大的容器,控件组里面的控件,相对位置已该控件组为基准,而不再已屏幕左上角为基准. 下面来看一下代码实例及其效果截图: public class GUI2 : MonoBehaviou ... 
- sql server group by    having   之复习篇
			where 与 having 之间的差别在于where 是分组前的过滤,而having是分组后的过滤 Group By中Select指定的字段限制 示例3 select 类别, sum(数量) as ... 
- ASP.NET LINQ SQL执行超时的问题
			最近在写一个航材取价的程序.由于执行的语句复杂,数据量比较大,容易造成超时. 看提示应该是执行SQL的时候超时,我在程序中用的linq. 实际把SQL语句单独执行的时候观察也要40秒左右. 查资料得知 ... 
- MYSQL知识点
			1.MYSQL为了可移植性,使用"--"做为注释,使用"/*!*/"表示可执行的注释. 
- Java环境的配置
			JAVA环境: 1.打开我的电脑--属性--高级--环境变量 2.将相应的JDK环境下载到本机,将路径保存到无中文路径中,并将路径复制下来. 3.在环境变量--系统变量,中新建 变量名:JAVA_HO ... 
- cocos2d-X-3.X 场景与层
			1场景与层的相关函数 1. void runWithScene(Scene * scene). 该函数可以运行场景.只能在启动第一个场景时调用该函数.如果已经有一个场景运行,则不能调用该函数. 2. ... 
- BZOJ 1066: [SCOI2007]蜥蜴( 最大流 )
			结点容量..拆点然后随便写 --------------------------------------------------------------- #include<cstdio> ... 
- JavaScriptの例
			Dateのオブジェクト: <html> <head> <title>Date Object Example</title> </head> ... 
- 编程实现Windows系统自动登录
			编程实现Windows系统自动登录 原理: 通过注册表修改实现.Windows内置了自动登录的机制,在登录系统时,winlogon会检查注册表下有没有设置自动登录,如果设置了就上就会读取用户名和密码, ... 
- Bootstrap禁用响应式布局
			在Bootstrap中极其重要的一个技术内容便是响应式布局了,一次编码针对不同设备终端的强大能力使得响应式技术愈发流行. 不过正所谓"萝卜青菜各有所爱",如果你想要使用Bootst ... 
