列印乙個字串的全部子串行, 包括空字串
在字串的子串行中,每個字元都包含兩種情況,
* 1.該字元在序列中
* 2.該字元不在序列中
解:遞迴
*base case:當前位置指向字串的最後乙個字元時,返回
所以在遞迴的過程中分為兩種情況:
* 1.該字元在序列中
* 2.該字元不在序列中
public class print_all_subsequencepublic void substr(string substr, int index, char chars)
//不要當前位置的字元
substr(substr, index + 1, chars);
//要當前位置的字元
substr(substr + chars[index], index + 1, chars);
}public static void main(string args)
}
字串匹配問題 遞迴和動態規劃
題目 給定字串str,其中絕對不含有字元 和 再給定字串exp,其中可以含有 或 字元不能是exp的首字元,並且任意兩個 字元不相鄰。exp中的 代表任何乙個字元,exp中的 表示 的前乙個字元可以有0個或者多個。請寫乙個函式,判斷str是否能被 exp匹配。舉例 str abc exp abc 返...
最長回文子串(動態規劃和遞迴)
給乙個字串,找出它的最長的回文子串行的長度。例如,如果給定的序列是 bbabcbcab 則輸出應該是7,babcbab 是在它的最長回文子串行。bbbbb 和 bbcbb 也都是該字串的回文子串行,但不是最長的。注意和最長回文子串的區別 參考 最長回文串 這裡說的子串行,類似最長公共子串行lcs l...
兩字串最長公共子串行 動態規劃
首先碰到求兩字串最長公共連續子串的問題,然後想到原先做過的求兩字串最長公共子串行問題,所以又把演算法導論上的解法看了一下。這兩個問題是不同的問題,求最長公共子串行不要求求得的子字串時連續的,比如說acb和ab的最長公共子串行就是ab。而最長公共連續子串,要求求得的子串在兩個字串中必須是連續出現的,還...