Что такое временная сложность списка для преобразования?

Я заметил таблицу временной сложности заданных операций на официальном сайте python. Но я просто хочу спросить, какая временная сложность преобразования списка в набор, например,

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

Я знаю, что на самом деле это хэш-таблица, но как она работает? Тогда O (n)?

Ответы

Ответ 1

Да. Итерирование по списку - это O(n) и добавление каждого элемента в хэш-набор O(1), поэтому общая операция O(n).