两个数组之间的字谜

2024-06-28 20:29:31 发布

您现在位置:Python中文网/ 问答频道 /正文

因此,我从用户输入中创建了两个数组,我想检查数组b是否是数组a的一个字谜,类似的东西,但我不知道希望你们如何帮助我

a = arr.array('i', [])
b = arr.array('B', [])

k = int(input("Masukkan Banyaknya Elemen A:"))
for i in range(0, k):
    num = int(input("Masukkan Elemen A ke-%d :" % (i + 1)))
    a.append(num)
    
print("All array A elements are:", end="")
for i in a:
    print(i, end=" ")
    
l = int(input("\n"+"Masukkan Banyaknya Elemen B:"))
for B in range(0, l):
    num = int(input("Masukkan Elemen B ke-%d :" % (B + 1)))
    b.append(num)
    
print("All array B elements are:", end="")
for B in b:
    print(B, end=" ")

Tags: inforinputrange数组arraynumint
2条回答
if sorted(A) == sorted(B):
    print('A and B are anagrams.')

我认为,理想情况下,我们可以使用字典来记录所有字母,并在以后检查

代码:-

def counter(s):
    string_list = []
    for ch in s.lower():
        string_list.append(ch)

    string_dict = {}
    for c in string_list:
        if c not in string_dict:
            string_dict[c] = 1
        else:
            string_dict[c] = string_dict[c] + 1

    return string_dict


s1 = "anagram"
s2 = "nagaram"

a = counter(s1)
b = counter(s2)

if a == b:
    print("Anagram")
else:
    print("Not Anagram")

使用某种排序函数(如sorted)的计算成本更高

相关问题 更多 >