이 튜토리얼에서는 문자열에서 모든 아나그램을 검색하는 프로그램을 작성할 것입니다.
몇 가지 예를 참조하십시오.
Input: anagram = "cat" string = "tacghactcat" Output: Anagram at 0 Anagram at 5 Anagram at 7 Anagram at 8
코드를 작성하는 방법을 알아보겠습니다. 아래 단계에 따라 코드를 작성하세요.
알고리즘
1. Initialize two strings. 2. Create a function which returns whether two strings are anagram to each other or not. 3. Iterate through the main string in which we have to search for the anagrams. 3.1. Check whether substring is an anagram or not using the function that we have defined. 3.1.1. If True, print the starting index.
작성하기 어렵다면 코드를 살펴보세요.
예시
# importing collections to check for anagrams import collections # initializing two strings anagram = 'cat' string = 'tacghactcat' # function to check for anagrams def is_anagram(string): # checking for anagram if collections.Counter(anagram) == collections.Counter(string): # returning True if anagrams return True else: # returning False if not return False # getting lengths of both strings anagram_len = len(anagram) string_len = len(string) # iterarint through the string for i in range(string_len - anagram_len + 1): # checking for anagram if is_anagram(string[i:i+anagram_len]): # printing the index print(f'Anagram at {i}')
출력
위의 프로그램을 실행하면 다음과 같은 결과를 얻을 수 있습니다.
Anagram at 0 Anagram at 5 Anagram at 7 Anagram at 8
결론
튜토리얼과 관련하여 의심스러운 점이 있으면 댓글 섹션에 언급하세요.