next數(shù)組通俗求法 如何快速求出next數(shù)組?
如何快速求出next數(shù)組?您可以參考下面的文章,這篇文章更適合初學(xué)者查找字符串的下一個(gè)數(shù)組值:known string STR=“aaab”,下一個(gè)數(shù)組值是0123。已知字符串STR=“babab”,
如何快速求出next數(shù)組?
您可以參考下面的文章,這篇文章更適合初學(xué)者
查找字符串的下一個(gè)數(shù)組值:known string STR=“aaab”,下一個(gè)數(shù)組值是0123。已知字符串STR=“babab”,其下一個(gè)數(shù)組值為01123。計(jì)算過程:計(jì)算3B(3B用坐標(biāo)3表示B):首先比較3B的前一位2a,2a的下一個(gè)值為1,然后將2a與坐標(biāo)1的字符串1b進(jìn)行比較,后者不相等。因?yàn)?b是第一位,3b的下一個(gè)值是1。計(jì)算4A:首先比較4A的第一位3b,3b的下一個(gè)值是1,然后將3b與坐標(biāo)為1的字符串1b進(jìn)行比較,這樣4A的下一個(gè)值是(3b1的下一個(gè)值)=2。計(jì)算5B:與計(jì)算4a類似,結(jié)果為21=3。
如何快速求出next數(shù)組?
我寫了一篇關(guān)于如何計(jì)算字符串next和nextval的文章,這篇文章相對(duì)簡單而生動(dòng)。適合初學(xué)者
參考這個(gè),哪個(gè)更適合初學(xué)者
ABABCAC0112312,下一個(gè)序列的前兩個(gè)字母分別是01。直接寫第三個(gè)“a”時(shí),第一個(gè)字母是B,開頭字母是a,a!=B,所以是第四個(gè)“a”,第一個(gè)字母是a,第一個(gè)字母是a,第一個(gè)字母是a,a=a,所以值是1+1=2(相等時(shí),字符串長度加1),第五個(gè)“B”,第一個(gè)字母是a,第一個(gè)字母是a,第一個(gè)字母是a,第一個(gè)字母是B,第一個(gè)字母是a,AB,第一個(gè)字母是AB,AB=AB,所以值是2+1=3,第七個(gè)字母是“a”,第一個(gè)字母是C,與開頭的第一個(gè)字母不同等于1,第八個(gè)字母是“C”,第一個(gè)字母是a,等于開頭的第一個(gè)字母,如果是2,則返回邏輯“true”,否則返回邏輯“false”。