В чем разница между массивами и связанными списками?

Массивы и связанные списки — две из самых популярных линейных структур данных. Давайте посмотрим на некоторые из их основных различий:

1. Выделение памяти

Массив

Весь массив хранится в непрерывном блоке памяти.

Связанный список

Различные элементы хранятся в разных местах памяти.

2. Размер

Массив

Размер массива указывается во время объявления и не может быть изменен впоследствии.

Связанный список

Элементы данных могут быть добавлены или удалены из связанного списка по желанию.

3. Использование пространства

Массив

Из-за непрерывного распределения массив может храниться только там, где доступен большой блок свободного пространства.

Связанный список

Различные элементы хранятся в разных местах; следовательно, связанные списки можно составлять на небольших участках свободного пространства.

4. Расход места

Массив

В целом потребление места меньше.

Связанный список

Для хранения указателей рядом с узлами требуется место.

5. Доступ к элементам

Массив

Любой элемент можно напрямую проиндексировать в O ( 1)O(1) O (1) время наихудшего случая.

Связанный список

Список необходимо пройти от первого элемента до требуемого элемента, принимая O ( n ) O (n) O (n) время наихудшего случая.

6. Параметры поиска

Массив

Линейный поиск и двоичный поиск (если отсортировано).

Связанный список

Только линейный поиск.

Оцените статью
nanomode.ru
Добавить комментарий