面試題 16 18 模式匹配

2021-10-25 03:24:58 字數 774 閱讀 2037

你有兩個字串,即pattern和value。 pattern字串由字母"a"和"b"組成,用於描述字串中的模式。例如,字串"catcatgocatgo"匹配模式"aabab"(其中"cat"是"a","go"是"b"),該字串也匹配像"a"、"ab"和"b"這樣的模式。但需注意"a"和"b"不能同時表示相同的字串。編寫乙個方法判斷value字串是否匹配pattern字串。

示例 1:

輸入: pattern = "abba", value = "dogcatcatdog"

輸出: true

暴力列舉,假設a對應的字串長度為lena,b對應的字串長度為lenb,那麼a*lena+b*lenb=n

列舉合適的lena和lenb,然後按pattern在value找a,b對應的字串是不是對應的上,並且字串要不一樣

class solution 

int sa = 0, sb = 0;

for(char& c: pattern)

if(sa < sb)

if(value.length() == 0)

for (int lena = 0; sa * lena <= value.length(); ++lena)

pos += lena;

}else

pos += lenb;}}

if(flag && value_a != value_b)

return true;}}

return false;

}};

16 面試題 16 18 模式匹配

難度 中等 面試題 16.18.模式匹配 你有兩個字串,即pattern和value。pattern字串由字 母 a 和 b 組成,用於描述字串中的模式。例如,字串 catcatgocatgo 匹配模式 aabab 其中 cat 是 a go 是 b 該字串也匹配像 a ab 和 b 這樣的模 式。...

LeetCode面試題 16 18 模式匹配

同步儲存一下。這還叫中等難度?再次照題解 分類討論 1.pattern為空,則只有value為空時為true,否則false 2.當value為空時,如果pattern中既有a也有b則為false,否則為true 3.當二者都不為空,如果pattern只有a或者只有b,如果value能整除patte...

Leetcode 面試題 16 18 模式匹配

你有兩個字串,即pattern和value。pattern字串由字母 a 和 b 組成,用於描述字串中的模式。例如,字串 catcatgocatgo 匹配模式 aabab 其中 cat 是 a go 是 b 該字串也匹配像 a ab 和 b 這樣的模式。但需注意 a 和 b 不能同時表示相同的字串。...