Публикации по теме 'linked-lists'
Структуры данных — Односвязные списки
Односвязные списки — это тип структуры данных, в которой значения хранятся в виде списка. В списке каждое значение считается узлом, и каждый узел связан со следующим значением в списке (или нулевым, если элемент является последним в списке) через указатель.
Первый элемент списка считается головным, а последний — хвостовым. Как и в случае с массивами, свойство длины определяется как количество элементов, содержащихся в списке.
Основные отличия от массивов следующие:
Списки не..
Связанные списки?
Что это за структура данных?
Связанный список - это, по сути, конструкция, противоположная массиву, но он используется для хранения данных точно так же, как это делает массив. Таким образом, они оба используются для хранения, но служат разным целям для хранения.
Чем он отличается от массивов?
Массив - это условная структура данных, объявленная в памяти. Таким образом, после объявления экземпляра массива его размер не может быть изменен. Однако с помощью абстракции вы можете..
Демистификация связанного списка
Начните использовать эту структуру данных вместо массива!
Выбор правильного способа хранения ваших данных - одна большая задача. Существует множество структур данных, и ни одна структура данных не подходит для каждой проблемы. Лучшее, что вы можете сделать, - это определить использование каждой структуры данных и определить, какая из них наиболее эффективна для конкретного случая.
Связанный список всегда был кошмаром для меня и моих коллег при изучении структур данных. Иногда меня..
Связанный список
Связанный список
В предыдущих постах мы рассмотрели двоичное дерево поиска (BST) и хеш-таблицу (HT), однако есть еще одна последняя структура данных: связанный список. Обычно имея Big-O O(n), связанный список может быть весьма дорогостоящим, если используется неправильно или неэффективно. Однако, как и любая другая структура, она также имеет свои соответствующие преимущества и некоторые желательные черты по сравнению с простыми массивами и нативными структурами.
Так что же такое..
Объяснение обратного связанного списка
Вам дан связанный список. Напишите функцию, чтобы обратить его.
Пример:
The original linked list is as follows:
3 -> 5 -> 2 -> 4
The reversed linked list has its arrows changed in direction:
3 <- 5 <- 2 <- 4
which means
4 -> 2 -> 5 -> 3
Не создавайте новые узлы . Вместо этого повторно используйте исходный связанный список и измените направления стрелок на месте.
Входные данные: значения узлов связанного списка, разделенные запятыми.
3..
Двоичное дерево вверх ногами
Учитывая двоичное дерево, где все правые узлы являются либо листовыми узлами с родственным узлом (левый узел, который имеет один и тот же родительский узел), либо пустым, переверните его вверх ногами и превратите в дерево, в котором исходные правые узлы превратились в левые листовые узлы . Верните новый рут.
Пример:
Input: [1,2,3,4,5]
1
/ \
2 3
/ \
4 5
Output: return the root of the binary tree [4,5,2,#,#,3,1]
4
/ \
5 2
/ \
3 1
На мой взгляд,..
Реализация связанного списка в ES6 JavaScript
Связанный список - это линейная структура данных. Структура данных - это термин в информатике, который используется для обозначения метода хранения, организации и управления данными. Некоторые структуры данных, с которыми вы, возможно, уже знакомы в JavaScript, - это массивы и объекты. Подобно различным алгоритмам, разные структуры данных имеют уникальные сильные и слабые стороны и варианты использования. Давайте посмотрим, как реализовать связанный список с помощью классов JavaScript..