кодесурса
«Python

Python: сделать две заданные анаграммы строк, удалив любые символы из любой строки

script1adsense2code
script1adsense3code

Строка Python: упражнение 66 с решением

Напишите программу на Python для создания двух заданных строк (строчные, могут иметь или не иметь одинаковую длину) анаграмм, удаляющих любые символы из любой строки.

Пример решения : -

Код Python:

def make_map(s):
    temp_map = {}
    for char in s:
        if char not in temp_map:
            temp_map[char] = 1
        else:
            temp_map[char] +=1 
    return temp_map        
def make_anagram(str1, str2):
    str1_map1 = make_map(str1)
    str2_map2 = make_map(str2)
 
    ctr = 0
    for key in str2_map2.keys():
        if key not in str1_map1:
            ctr += str2_map2[key]
        else:
            ctr += max(0, str2_map2[key]-str1_map1[key])
 
    for key in str1_map1.keys():
        if key not in str2_map2:
            ctr += str1_map1[key]
        else:
            ctr += max(0, str1_map1[key]-str2_map2[key]) 
    return ctr 
str1 = input("Input string1: ")
str2 = input("Input string2: ")
print(make_anagram(str1, str2))

Пример вывода:

 Входная строка1: быстрая коричневая лиса
Входная строка2: перепрыгивает через ленивую собаку
24

Блок - схема:

«Блок-схема:

Визуализируйте выполнение кода Python:

Следующий инструмент визуализирует, что компьютер делает шаг за шагом при выполнении указанной программы:

Редактор кода Python:

Есть другой способ решить это решение? Внесите свой код (и комментарии) через Disqus.

Предыдущий: Напишите программу на Python, чтобы найти все общие символы в лексикографическом порядке из двух заданных строчных букв. Если общих букв нет, выведите «Нет общих символов».
Далее: Напишите программу на Python для удаления всех последовательных дубликатов данной строки.

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code