Проблемы с Python: найдите один элемент в списке, где каждый элемент появляется три раза, кроме одного
Задачи Python - 1: Упражнение 13 с решением
Напишите программу на Python, чтобы найти один элемент в списке, где каждый элемент появляется три раза, кроме одного.
Объяснение:
Пример решения : -
Код Python:
def single_number(arr):
ones, twos = 0, 0
for x in arr:
ones, twos = (ones ^ x) & ~twos, (ones & x) | (twos & ~x)
assert twos == 0
return ones
arr1 = [5, 3, 4, 3, 5, 5, 3]
arr2 = [-1, 1, 1, -1, -1, 1, 0]
print(single_number(arr1))
print(single_number(arr2))
Пример вывода:
4 0
Блок - схема:
Визуализируйте выполнение кода Python:
Следующий инструмент визуализирует, что компьютер делает шаг за шагом при выполнении указанной программы:
Редактор кода Python:
Внесите свой код и комментарии через Disqus.
Предыдущий: Напишите программу на Python, чтобы найти одно число в списке, которое не встречается дважды.
Далее: Напишите программу на Python, чтобы найти один элемент, который появляется один раз в списке, где каждый элемент появляется четыре раза, кроме одного.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования