@No_name451

В какой структуре данных хранятся контейнеры* (list, turple) в Python* 3.x (Cpyhtoh)?

Интересует в каком виде хранятся list и turple в памяти под капотом в Python (Cpyhtoh)?

Для его хранения подходят 3 основных структурны данных:
1. Массив - элементы в нем хранятся в памяти последовательно, то есть индекс элемента массива обычно указывает на какое количество слотов от начала массива конкретный элемент находится.
2. Однозвязанный список - элементы могут храниться уже не последовательно, так как в текущем элементе имеется указатель на следующий элемент односвязанного списка.
3. Двусвязный список - он аналогичен односвязанному списку, только помимо указателя на следующий элемент также имеется указатель на предыдущий.

В некоторых статьях (https://pythonz.net/references/named/slozhnost-ope...) указанно, что list хранится как массив. В целом данный тип вполне себе хорошо подходит, так как в таком случае доступ для рандомного чтения элемента предоставляется быстро, + в самом массиве храниться один тип данных (если не ошибаюсь, указатель ссылки на PyObject, который в свою очередь может быть абсолютно любого типа (int, bool, str, list, set, ...)).
Верно ли это? Если да, то справедливо ли данное правило и для turple?
  • Вопрос задан
  • 55 просмотров
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Python
Седой и строгий
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы