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


Двусвязный список в Javascript (структуры данных)
Короткий и точный код Js для создания двусвязного списка Почти идентичен односвязным спискам, за исключением того, что каждый узел имеет еще один указатель на предыдущий узел. Он обеспечивает большую гибкость по сравнению с односвязными списками. Все: 1. Толкай и хлопай 2. Unshift и Shift 3. Получить и установить 4. Вставить и удалить Создание узла: он содержит значение и два указателя next , prev . Двусвязный список: три важные вещи: начало, хвост, длина..

Стек в JavaScript (структуры данных)
Короткий и точный код Js для создания стека. Стек — это линейная структура данных, которая следует определенному порядку выполнения операций. Порядок может быть LIFO (последним пришел, первым ушел) или FILO (первый пришел последним). Реализация стека с использованием массивов: Использование метода push/pop ( последним пришел первым ушел) 2. Использование метода shift/unshift Примечание. Из этих двух методов shift/unshift крайне неэффективен, поскольку..

Шаблон кодирования: циклическая сортировка
Циклическая сортировка — это алгоритм сортировки на месте. Этот шаблон описывает интересный подход к решению проблем, связанных с массивами, содержащими числа в заданном диапазоне. Он оптимален с точки зрения количества операций записи в память. Он основан на идее, что сортируемый массив можно разбить на циклы. Циклы можно представить в виде графика. Основная идея: данный элемент a, мы можем найти индекс, под которым он будет встречаться в отсортированном списке, просто..

LeetCode 450- Удалить узел в двоичном дереве поиска
Вопрос : Учитывая ссылку на корневой узел BST и ключ, удалите узел с данным ключом в BST. Вернуть ссылку на корневой узел (возможно, обновленную) BST. В основном удаление можно разделить на два этапа: Найдите узел, который нужно удалить. Если узел найден, удалите узел. Пример 1: Input: root = [5,3,6,2,4,null,7], key = 3 Output: [5,4,6,2,null,null,7] Explanation: Given key to delete is 3. So we find the node with value 3 and delete it. One valid answer is..

Сортировка и обход: исследование мира алгоритмов
Добро пожаловать, друзья-авантюристы! 🎉 Приготовьтесь к захватывающему приключению в захватывающем мире алгоритмов, пока мы погружаемся в сферы сортировки и обхода. Приготовьтесь стать свидетелями волшебства ✨, пока мы разгадываем тайны порядка и исследования, превращая хаос данных в гармонию. Алгоритмы сортировки играют решающую роль в организации данных, располагая элементы в определенном порядке. Они вносят порядок в хаос, обеспечивая структурированное представление данных...

Философия пузырьковой сортировки
Сортировка — увлекательная и одна из самых важных концепций информатики. Это фундаментальная операция, которая позволяет нам упорядочивать и осмысливать огромные объемы данных. Но сортировка предназначена не только для компьютеров — это концепция, которую мы используем каждый день в нашей жизни. Вы когда-нибудь составляли список дел по приоритету или сроку выполнения? или Упорядочить набор фотографий в хронологическом порядке? Оба примера сортировки в действии! Существует..

Ваш помощник по программированию № 5: понимание алгоритмов и их использование
Ваш помощник по программированию № 5: понимание алгоритмов и их использование Теперь мы понимаем, как работает поток управления в языках программирования, что позволяет нам читать, писать и понимать фрагменты кода. Но когда мы говорим о написании программного обеспечения, особенно сложного, это не просто куча кода, беспорядочно записанного в файлы. Некоторые структуры были стандартизированы на протяжении многих лет, что упрощает создание динамических и повторно используемых..