Связанный список — это имя, данное цепочке, образованной узлами любого типа (узлами), опять же указывающими на узлы своего типа (точки). Соответственно, каждый узел будет иметь указатель своего типа, и эти указатели и узлы будут связаны следующим образом.
Преимущество связанного списка в том, что он динамически использует память. Соответственно, место в памяти будет освобождено для информации, удаленной из памяти, или будет зарезервировано достаточно места для вновь добавленной информации, чтобы хранить только эту информацию.
Приложение со связанным списком, очень похожее на связанный список, показанный на рисунке выше, также является приложением со связанным списком.
Соответственно, каждый узел привязан как до, так и после него, поэтому есть возможность двигаться вперед и назад по списку.
Преимущества:
Они носят динамический характер, поэтому память выделяется по мере необходимости.
Операции вставки и удаления можно легко реализовать.
Стеки и очереди можно легко запускать.
Связанный список сокращает время доступа.
Недостатки
Память тратится впустую, так как указатели требуют дополнительной памяти для хранения.
Ни один элемент не может быть доступен случайным образом; он должен обращаться к каждому узлу последовательно.
Обратный обход в связанном списке затруднен.
Существует три разных типа связанных списков: Односвязные списки, двусвязные списки и циклические списки. Мы используем их для реализации стеков, очередей и графов. Кроме того, они позволяют вставлять элементы в начало и конец списка.
В чем разница между массивами и связанными списками
Как мы видели в видео, между связными списками и массивами есть некоторые различия. Сначала я хочу поговорить о массивах. Массив — это тип данных, который широко реализован как тип по умолчанию почти во всех современных языках программирования и используется для хранения данных аналогичного типа. Но есть много вариантов использования, например, когда мы не знаем количество данных, которые нужно сохранить, для которых требуются расширенные структуры данных, и одной из таких структур данных является связанный список.
Ниже у меня есть графическое представление, показывающее, что последовательные ячейки памяти выделяются для массива, тогда как в случае списка случайные ячейки памяти назначаются узлам, но каждый узел связан со своим следующим узлом с помощью указателя.