Проблемы с Python: найдите два элемента один раз в списке, где каждый элемент появляется ровно два раза в списке
Задачи Python - 1: Упражнение 15 с решением
Напишите программу на Python, чтобы найти два элемента один раз в списке, где каждый элемент появляется в списке ровно дважды.
Пояснение:
Пример решения : -
Код Python:
import functools
import operator
def two_numbers(arr):
x_xor_y = functools.reduce(operator.xor, arr)
bit = x_xor_y & -x_xor_y
result = [0, 0]
for i in arr:
result[bool(i & bit)] ^= i
return result
print(two_numbers([1, 2, 1, 3, 2, 5]))
print(two_numbers([11, 5, 3, 7, 0, 5, 3, 6, 7, 11]))
Пример вывода:
[5, 3] [0, 6]
Блок - схема:
Визуализируйте выполнение кода Python:
Следующий инструмент визуализирует, что компьютер делает шаг за шагом при выполнении указанной программы:
Редактор кода Python:
Внесите свой код и комментарии через Disqus.
Предыдущий: Напишите программу на Python, чтобы найти один элемент, который появляется один раз в списке, где каждый элемент появляется четыре раза, кроме одного.
Далее: Напишите программу на Python, чтобы несколько раз добавлять цифры положительного целого числа, пока результат не будет иметь одну цифру.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования