#javarush

2024-10-09

Принципы SOLID на примерах из жизни и разработки

Задача этой статьи только одна - попробовать уложить принципы SOLID на понятных «бытовых» примерах, а уже потом посмотреть, как оно может работать на практике - в коде. Итак, SOLID - это 5 принципов, которые используются при разработке приложений. На каждый принцип по букве: 1. S — Single Responsibility Principle (Принцип единственной ответственности) Определение : Каждый класс должен выполнять только одну задачу. Пример из жизни: Например, мы купили шкаф для одежды.

habr.com/ru/articles/849350/

#solid #паттерны_проектирования #паттерны #java #подготовка_к_собеседованиям #подготовка_к_собеседованию #javarush

2024-08-05

Нахождение преобладающего элемента последовательности (алгоритм большинства голосов Бойера-Мура)

Пару статей назад я уже рассматривала один из алгоритмов Бойера-Мура, с помощью которого можно было найти подстроку в строке. Сегодня хочу поболтать об алгоритме большинства голосов, который позволяется найти преобладающий элемент последовательности. Предлагаю сразу использовать его на примере задачи «Majority Element» с leetcode. Условие здесь: leetcode.com/problems/most-fre Кстати, у меня есть телеграм-канал, где пишу подходы к решениям всяких задачек с LeetCode, там больше разборов конкретных задач, чем здесь, потому что не всегда нужна статья. В общем, если интересно - жду здесь - t.me/crushiteasy :) Возвращаемся к Муру! Кратко: на вход мы получаем массив, состоящий из чисел. Нужно найти число, которое встречается наибольшее количество раз. Не супер очевидно, но это число занимает больше половины элементов массива, т.е.

habr.com/ru/articles/833932/

#java #алгоритмы #алгоритмы_поиска #программирование #leetcode #faang #javarush

2024-08-02

Использование очередей (Queue/Deque) для решения алгоритмических задач на Java

Как всегда, сначала немного базовой теории для понимания того, с чем мы имеем дело. Queue - однонаправленная очередь, представляет собой структуру данных, которая строится по принципу FIFO (first-in-first-out) . Другими словами, чем раньше элемент был добавлен в коллекцию, тем раньше он оттуда будет удален. Выжимка по методам:

habr.com/ru/articles/833444/

#java #leetcode #алгоритмы #deque #программирование #queue #javarush #alhoritms

Client Info

Server: https://mastodon.social
Version: 2025.07
Repository: https://github.com/cyevgeniy/lmst