🖥 Оптимизируем производительность кода!



1. Использование collections.deque для очередей: deque позволяет эффективно работать с очередями и списками с обоих концов за время O(1):

from collections import deque

queue = deque([1, 2, 3])

queue.append(4) # добавление в конец

queue.popleft() # удаление с начала

print(queue) # вывод: deque([2, 3, 4])




2. Использование генераторов для экономии памяти: Генераторы позволяют создавать последовательности данных без необходимости хранить их все в памяти:

def generate_numbers():

for i in range(5):

yield i

for num in generate_numbers():

print(num) # вывод: 0 1 2 3 4




3. Использование set для уникальных элементов и быстрого поиска: Операции поиска и удаления в множестве (set) выполняются за время O(1), что быстрее, чем в списке:

unique_numbers = set([1, 2, 3, 4, 5])

print(3 in unique_numbers) # вывод: True




👉 Python Ready | #техсобес