問題:給定兩個字串,計算這兩個字串的最大字元匹配個數
示例:
str1 = abbc a b bc
str2 = eaabacbcbac eaabacbcbac
最大匹配個數為4 。
動態規劃求解:
定義dp(i,j)表示str1(0,i)和str2(0,j)的最大字元匹配個數
子問題遞推關係:
dp(i,j) = max
最小子問題:
dp[0,len(str1)]=0, dp(len(str2),0)=0
**:
#include templateint maxmatch(t* match, int m_size, t* pattern, int p_size)
int maxmatch = dp[m_size * p_size - 1];
delete dp;
return maxmatch;
}
兩個字串中匹配最大字串
實現一 includevoid main int count 0 int tmp count 0 for i 0 icount strncpy result,str1 start index,count printf result 實現二 給出兩個字串,用自己最熟悉的程式語言找出兩個字串中匹配最長的...
兩個字串中匹配最大字串
大體意思是,給出兩個字串,用自己最熟悉的程式語言找出兩個字串中匹配最長的字串。如 ascdefd 和 mntrcdefpk 則匹配出的最大字串為 cdef。自己實現了一下,呵呵,當時練筆吧,或許以後能用到。開始是用執行緒實現的,如果啟動多個執行緒匹配的話,可能會更快,後來還是謝了個一般方法來實現,這...
正則匹配兩個字元之間的字串
匹配兩個字串x與y中間的字串包含a與b 表示式 x.y 表示任意字元,表示匹配0個或多個 示例 xabab 結果 xababcdcy 匹配兩個字串a與b中間的字串包含a但是不包含b 表示式 x.y 示例 xabady 結果 xabad 匹配兩個字串x與y中間的字串且不包含x與y 表示式 x y 網上...