亂序字串比較 python

2021-09-24 03:49:25 字數 723 閱讀 1234

亂序字串是指乙個字串只是另乙個字串的重新排列。例如,'heart''earth'就是亂序字串。

下面的方法是比較連個字串是不是亂序字串,下面應該是演算法複雜度比較小的的了。其他的先排序,然後比較。應該算比較容易想到。但是複雜度會提高。

def compilestr(a,b):

s1 = [0]*26

s2 = [0]*26

flag = 0

tag = true

if len(a)!= len(b):

return false

for i in range(len(a)):

j = ord(a[i])-ord('a')

s1[j] = s1[j]+1

for i in range(len(b)):

j = ord(b[i])-ord('a')

s2[j] = s2[j]+1

while flag< 26 and tag:

if s1[flag]== s2[flag]:

flag+= 1

else:

tag = false

return tag

if __name__== '__main__':

a = "abcmnk"

b = "bcamn"

tt = compilestr(a,b)

print(tt)

亂序字串

給出乙個字串陣列s,找到其中所有的亂序字串 anagram 如果乙個字串是亂序字串,那麼他存在乙個字母集合相同,但順序不同的字串也在s中。所有的字串都只包含小寫字母 對於字串陣列 lint intl inlt code 返回 lint inlt intl 思路 認為每一組亂序字串都有唯一的相同的 h...

亂序字串

給出乙個字串陣列s,找到其中所有的亂序字串 anagram 如果乙個字串是亂序字串,那麼他存在乙個字母集合相同,但順序不同的字串也在s中。所有的字串都只包含小寫字母 樣例1 輸入 lint intl inlt code 輸出 lint inlt intl 樣例 2 輸入 ab ba cd dc e ...

亂序字串演算法

蠻力法 思路等會睡醒之後寫吧 include string include algorithm include stdio.h include iostream include vector using namespace std bool isanagram string source,strin...