Структуры данных — это просто специализированные форматы для организации и хранения данных. Они крайне необходимы для разработки программного обеспечения, поэтому их правильный выбор очень важен.
Одна из важнейших характеристик в выборе правильной структуры — ее нотация О большое.
Что такое нотация О большое? Это язык описания производительности алгоритма и его масштабирования (не важно, насколько он быстрый).
Существует множество статей о структурах данных. В этой я сконцентрируюсь на реализации на Python, потому что:
- Нет единого материала о временной сложности структур данных.
- У меня несколько разных структур данных.
- Временная сложность может преподносить сюрпризы при реализации структуры данных.
Начнем
1. List
List — это упорядоченный изменяемый набор элементов.
2. Set
Set — это неупорядоченный набор уникальных хэшируемых объектов.
3. Dict
Dict отображает хэшируемые значения в произвольные изменяемые объекты.
4. Default dict
Defaultdict — это словарь, который запускается со значением по умолчанию, когда каждый ключ встречается впервые.
5. Deque
Deque — это двусторонняя очередь.
6. Heapq
Heapq — это двоичное дерево поиска, для которого каждый родительский узел имеет значение меньшее или равное любому из потомков.
7. Counter
Counter — это подкласс dict для подсчета хэшируемых объектов. Это неупорядоченный набор, в котором элементы хранятся как ключи словаря и их значения как значения словаря.
Специально для сайта ITWORLD.UZ. Новость взята с сайта NOP::Nuances of programming