Sobes.tech
Junior
40

Jaką kolekcję użyć, aby szybko sprawdzić, czy konkretna wartość znajduje się na liście przetworzonych wartości w aplikacji czytającej duży strumień danych (miliony)?

Firmy, w których zadano pytania
Почтатех

Odpowiedź od AI

sobes.tech AI

Для быстрой проверки наличия конкретного значения среди миллионов обработанных лучше всего использовать множество (set) в Python. Множество реализовано на основе хэш-таблицы, что обеспечивает амортизированное время поиска O(1).

Пример:

processed = set()

# Добавление значений
processed.add(value)

# Проверка наличия
if value_to_check in processed:
    print("Значение уже обработано")
else:
    print("Значение новое")

Использование списка или других коллекций будет значительно медленнее, так как поиск в них — O(n).