В недавней статье мы рассматривали такую структура данных как стек. Если вы не знаете что такое стек, то обязательно перейдите по ссылке и почитайте, потому что сегодня мы разберем решение одной интересной задачи с сайта codeforces.com с использованием реализованного ранее нами стека. Вот условие задачи: В автобусе характеров есть n рядов сидений, в каждом по 2 места. В i-м ряду ширина обоих сидений равна w_i сантиметров. Все числа w_i различны. Изначально автобус пустой. На каждой из 2n остановок в автобус садится …
Метка: массивы
Отойдем от классической последовательности описания чего-либо. Вместо определения мы начнем с разницы. Разницы между стеком и обычным, классическим массивом, и только после дадим определение структуре данных как стек. Ранее мы рассматривали алгоритмы сортировки, используя за основу массив. Почему? Массивы отлично подходят для описания, если можно так сказать, реляционной структуры. Используя их мы можем получить доступ к любому элементу по индексу, записать элемент в массив, изменить, сортировать, удалять элементы. Поэтому такие массивоподобные структуры данных (списки, деревья, графы, связные списки и т.д.) …
Ранее мы рассмотрели сортировку “Пузырьком” и сортировку методом “Выбора”. В это статье коснемся еще одного метода упорядочения данных. Сортировка “Вставками” так же относится к элементарным сортировкам. Она чуть сложнее для понимания нежели две упомянутые выше, однако несмотря на аналогичную сложность алгоритма O(N^2), считается, что сортировка вставками работает эффективнее на небольших случайных массивах, а так же на частично упорядоченных массивах. На базе сортировки “Вставками” основан более быстрый метод сортировки “Шелла”. О нем мы поговорим в отдельной статье, сейчас же давайте разберемся …
Массив одна из самых популярных структур данных и в тоже время, самых старых. С их помощью можно решать многие задачи связанный с хранением, поиском, удалением и добавлением данных. В Java массив представляет собой ссылку на область память, где хранятся данные массива. [crayon-647a898b26928438422798/] Упорядоченный массив, представляет собой массив, в котором его элементы расположены в упорядоченном виде (по возрастанию/убыванию). Такие массивы используются в тех случаях, если при работе с ним, количество операций поиска элемента массива много больше операций вставок и удаления. Далее …