Как стать автором
Обновить

Комментарии 10

Массивы (они же списки)

В классической дисциплине "алгоритмы и структуры данных" списки это все-же не массивы, под списками обычно понимаются двусвязные или односвязные списки, когда каждый элемент содержит указатели на предыдущий и/или следующий, а сами элементы располагаются не в непрерывной памяти, а в произвольном порядке.

Вы правы, когда писал имел ввиду списки из питона, добавил оговорку про это

No. В классическом понимании список это абстрагированная от реализации одномерная абстракция. Может быть на основе массива, либо связной. Всякий массив уже список, не всякий список - массив.

Деревья - тоже важная структра данных.

Дерево это связный ациклический граф, то есть - подмножество графов.

Массив(списки в python) — это структура данных, представляющая собой коллекцию элементов одного типа

Почему это одного типа? Я что, не могу первым элементом добавить строку, а вторым число?

В питоновских списках хранятся адреса объектов, а не сами объекты. Поэтому в этом смысле да, одного типа.
Так что тут надо уточнять, с какой стороны смотреть, с точки зрения языка программирования, или с точки зрения структур данных.

А почему хаб - Go, если все примеры на python?

Целая мапа на панграмму это дофига. Там на метадате в ее реализации больше потратите, чем получите. Делаете байт/булеан массив в 26 элементов (для строчной латиницы), где нулевой это 61h ascii и закидываете туда 1/false по номеру символа. Результат будет асимптотически тот же, но по памяти неасимптотически, но выгоднее В случае например любого символа юникода - уже хорошо иметь HashSet, изначально пустой, чтобы в него добавить и потом по юникоду пробежаться без особых потерь, на предмет отсутствия. В целом его наличие в языке уже довольно универсальное решение этой задачи, частный случай с латиницей в ascii это его "эмуляция", но более выгодная, за счет того что любая имплементация множества дает либо пересоздание массива - O(N) модификацию, либо O(N) поиск в линкед варианте . В любом случае мапа тут против множества избыточна, она так же себе ведет как множество, но тяжелее, хоть и на константу.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий