Публикации по теме 'data-structures'


Массивы против связанного списка… и победитель…!
Массивы и связанные списки являются популярными структурами данных, и их довольно легко реализовать. Конечно, у обоих есть свои предостережения, и к концу статьи я надеюсь осветить большинство из них. Во-первых, что такое массивы и связанные списки? Короче говоря, массив — это структура данных, которая непрерывно хранит данные в памяти и организована по расположению индексов. Каждый индекс соответствует элементу в массиве, и количество элементов в массиве должно быть объявлено перед..

1. Все перестановки
Вопрос: Напишите рекурсивную функцию, которая возвращает все перестановки заданной строки. - Например, учитывая «», y должен вернуть [], - Например, заданное «хо» должно возвращать [«хо», «о»], - Например, данное «хей» должно возвращать [«эх», «эх», «эй», «хэ», «йех», «йхэ»]. Подсказки:

Удалить элемент | Leetcode # 27 | Легкий
В этом посте я расскажу о решении проблемы с leetcode - Удалить элемент . Проблема: Для массива nums и значения val удалите все экземпляры этого значения на месте и верните новую длину. Не выделяйте дополнительное пространство для другого массива, вы должны сделать это, изменив входной массив на месте с O(1) дополнительной памятью. Порядок элементов можно изменить. Неважно, что вы оставите за пределами новой длины. Уточнение: Не знаете, почему возвращаемое..

Реализация нескольких стеков в одном массиве
Чтобы реализовать несколько стеков в одном массиве, один из подходов состоит в том, чтобы разделить массив на k слотов размером n / k каждый и исправить слоты для разных стеков, мы можем использовать arr [0] для arr [n / k-1] для первого стека и от arr [n / k] до arr [2n / k-1] для stack2 и так далее, где arr [] - это массив размера n. Хотя этот метод прост для понимания, но проблема с этим методом заключается в неэффективном использовании пространства массива. Операция выталкивания..

Реализация бинарного дерева поиска в JavaScript
До сих пор я реализовывал стеки, очереди, связанные списки и хэш-карты. Сегодня я собираюсь рассмотреть бинарные деревья поиска или BST. Бинарные деревья поиска Двоичные деревья поиска — это структуры данных, используемые для хранения данных в отсортированном порядке. Дерево начинается с корневого узла и разветвляется на другие узлы по мере того, как дерево становится все больше и больше. Однако есть пара загвоздок . Каждый узел может иметь не более двух дочерних элементов. Узлы..

Связанный список  — «Путь JavaScript»
Определение связанного списка из Википедии: Связанный список — это линейный набор элементов данных, порядок которых не определяется их физическим размещением в памяти. Вместо этого каждый элемент указывает на следующий. В Javascript я более чем доволен ARRAY-yay!!!. Но нет ничего плохого в том, чтобы реализовать связный список. Итак, вот что я придумал с реализацией связанного списка. Надеюсь, это поможет вам так или иначе. Весь этот код будет помещен в один файл, скажем,..

Напишите программу на Java для «треугольника Паскаля», используя динамическое программирование (рекурсия)!
Подробности:- Что такое треугольник Паскаля? Треугольник Паскаля — это такое расположение чисел в треугольном массиве, что числа в конце каждой строки равны 1, а остальные числа представляют собой сумму ближайших двух чисел в приведенной выше строке. Это понятие широко используется в теории вероятностей, комбинаторике и алгебре. Треугольник Паскаля используется для нахождения вероятности исхода подбрасывания монеты, коэффициентов биномиальных разложений по вероятности и т. д...