Дерево AVL и структура данных кучи в C++

Дерево AVL и кучи в C++Дерево AVL — это бинарное дерево, сбалансированное по высоте. Каждый узел связан со сбалансированным коэффициентом, который вычисляется как разница между высотой его левого поддерева и правого поддерева.

Дерево AVL названо в честь двух его изобретателей Абельсона-Велвети и Лэндиса в 1962 году, и опубликовано в их статье “Алгоритм организации информации”. (далее…)

Продолжить чтениеДерево AVL и структура данных кучи в C++

Бинарное дерево поиска в C++

Бинарное дерево поискаДвоичное или бинарное дерево поиска или BST, как его обычно называют, представляет собой двоичное дерево, которое подходит под следующие условия: (далее…)

Продолжить чтениеБинарное дерево поиска в C++

Деревья в C++

ДеревьяДо этой статьи мы рассматривали линейную структуру данных как статической, так и динамической природы. Теперь мы перейдем к нелинейной структуре данных. Первая структура данных в этой категории — “Деревья”. (далее…)

Продолжить чтениеДеревья в C++

Хеш-таблица в C++

Хеш-таблицаХеширование — это метод, с помощью которого мы можем сопоставить большое количество данных с таблицей меньшего размера, используя “хеш-функцию”. (далее…)

Продолжить чтениеХеш-таблица в C++

Двухсторонняя очередь (Deque) в C++

Двухсторонняя очередьОчередь с двойным завершением или просто двухсторонняя очередь “Deque” — это обобщенная версия очереди.

Разница между Queue и Deque заключается в том, что Deque не следует подходу FIFO (первый вход, первый выход). Особенность Deque заключается в том, что мы можем вставлять и удалять элементы как с переднего, так и с заднего концов. (далее…)

Продолжить чтениеДвухсторонняя очередь (Deque) в C++

Структура данных циклической очереди в C++

Структура данных циклической очередиЦиклическая очередь — это расширение базовой очереди, которую мы обсуждали ранее. Циклическая очередь также называют “кольцевой буфер”.

Что такое циклическая очередь в C ++? (далее…)

Продолжить чтениеСтруктура данных циклической очереди в C++

Структура данных приоритетной очереди в C++

Структура данных приоритетной очередиПриоритетная очередь — это расширение очереди, которую мы обсуждали в нашей предыдущей статье.

В некоторых аспектах она похожа на очередь, но отличается от обычной очереди следующими моментами: (далее…)

Продолжить чтениеСтруктура данных приоритетной очереди в C++

Структура данных очереди в C++

Структура данных очередиОчередь — это базовая структура данных, такая же, как и стек. В отличие от стека, который использует подход LIFO, очередь (queue) использует подход FIFO (первый вход, первый выход). При таком подходе первый элемент, добавляемый в очередь, является первым элементом, удаляемым из очереди. Как и стек, очередь также является линейной структурой данных. (далее…)

Продолжить чтениеСтруктура данных очереди в C++

Структура данных стека в C++

Структура данных стекаСтек — это фундаментальная структура данных, которая используется для хранения элементов линейным способом. (далее…)

Продолжить чтениеСтруктура данных стека в C++

Структура данных циклического связного списка в C++

Циклический связный списокЦиклический связный список — это еще один тип связного списка. Это связный список, узлы которого соединены таким образом, что они образуют круг (кольцо). (далее…)

Продолжить чтениеСтруктура данных циклического связного списка в C++