Статьи Утилиты Telegram YouTube VK Видео RuTube Отзывы

Статьи с тэгом «алгоритмы»

Алгоритм инвертирования массива

22 февраля 2023

Тэги: Java, алгоритмы, головоломки.

Инвертирование массива - это изменение порядка следования его элементов на обратный, т.е. первый элемент становится последним, а последний - первым.
Читать полностью...

Алгоритм определения анаграмм

21 февраля 2023

Тэги: Java, Collections, головоломки, алгоритмы.

Одно слово является анаграммой другого, если второе слово получается из первого путём перестановки букв. Даны две строки и нужно определить, являются ли они анаграммами.
Читать полностью...

Алгоритм определения палиндрома

8 июля 2022

Тэги: алгоритмы, Java, головоломки.

Палиндром - это слово или строка текста, которая читается слева направо и справа налево одинаково. Например, палиндромами являются такие слова как "ага", "дед", "довод", "кабак", "мадам", "шалаш". Рассмотрим эффективный алгоритм определения палиндрома на Java.
Читать полностью...

Решето Эратосфена для поиска простых чисел

17 июня 2022

Тэги: Java, Collections, алгоритмы, головоломки, руководство, YouTube.

Алгоритм заключается в том, что мы берём всё множество целых чисел в интересующем нас диапазоне, от 2 до N. Затем проходимся по этому множеству, вычёркивая каждое чётное число. После этого возвращаемся в начало и вычёркиваем все числа, делящиеся на 3, если они ещё не зачёркнуты. Мы "просеиваем" исходное множество целых чисел через сито. В итоге у нас останутся только простые числа.
Читать полностью...

Алгоритм поиска простых чисел

16 июня 2022

Тэги: Java, алгоритмы.

Простое число - это число, которое делится нацело без остатка только на 1 и на самого себя. Также известно, что любое целое число, большее 1, является либо простым, либо может быть выражено как произведение простых чисел.
Читать полностью...

Бинарный поиск на отсортированном массиве

11 апреля 2022

Тэги: Java, алгоритмы.

Суть бинарного поиска можно описать как "разделяй и властвуй". Исходный отсортированный по порядку массив мы делим пополам и проверяем элемент посередине. Если он равен тому, который мы ищем, то возвращаем его индекс. Если не равен, то проверяем границы и выбираем ту половину, в которой искомый элемент может находиться и выполняем проверку снова.
Читать полностью...

Пузырьковая сортировка

4 апреля 2021

Тэги: алгоритмы, Kotlin, Java.

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

Проверка вложенности скобок

22 марта 2021

Тэги: Java, алгоритмы, головоломки.

Среди алгоритмических задач часто встречается задача на проверку скобочной последовательности. На вход передаётся строка, в которой содержатся символы скобок и, возможно, другие символы. И нужно ответить, правильно ли скобки вложены друг в друга или нет?
Читать полностью...

Вычисление MD5-хэша

13 февраля 2020

Тэги: алгоритмы, Spring, Java.

MD5 хэш (Message Digest 5) – это 128 битный алгоритм вычисления хэша от сообщения произвольной длины. Чаще всего хэш вычисляется от строки (для проверки паролей) и от файла (для контроля его целостности).

Следует сразу же заметить, что хранение паролей в виде md5-хэшей в настоящее время считается небезопасным, т.к. md5-хэш довольно сильно подвержен коллизиям. Коллизией называется ситуация, когда у двух исходных сообщений хэши равны. То есть для успешного прохождения проверки пароля, сохраняемого в виде md5-хэша, вам даже не обязательно знать именно этот пароль. Достаточно знать пароль, имеющий такой же хэш. Более того, хэши от простых паролей можно напрямую искать в Google.

Вычисление хэша от строки

Алгоритм хэширования MD5 является частью стандартной библиотеки Java, поэтому вычислить хэш от строки (например, от пароля) достаточно легко.

Читать полностью...

Вычисление размера директории

25 января 2020

Тэги: алгоритмы, Stream API, файлы, Java.

При работе с файловой системой может потребоваться вычислить размер папки (folder) с лежащими в ней файлами. Как известно, директория - это лишь логический раздел на файловой системе, поэтому её размер равняется сумме размеров всех файлов, находящихся внутри неё. При этом нужно пройтись по всей иерархии файлов и папок, находящихся внутри.
Читать полностью...

❮ Назад Далее ❯