Как говорили учителя в школе — а теперь для самых умных задача со звездочкой. «Longest cycle in a graph» отмечена как сложная задача на leetcode. Давайте разберем как её решить.
Читать далее »Все записи категории ‘На первой полосе’
Разбираю задачу #200 с литкода, число островов (number of islands).
Задан двумерный массив, в котором участки суши помечены как «1», а участки воды — как «0». Требуется подсчитать число получившихся островов. При этом считается, что участки суши образуют единый остров, только если соединяются напрямую по X или по Y (т.е. по диагонали они не соединяются).
Читать далее »Leetcode задача #168. Excel Sheet column title.
Задача помечена как простая, тем не менее, не сразу понял как её решать.
Дано число, это номер столбца для Excel таблицы, требуется сгенерировать его буквенное имя. Иными словами сопоставить 1 -> A, … 26 -> Z, 27 -> AA …
Читать далее »Разбор задачи с литкода. (2348. Number of Zero-Filled Subarrays).
Суть: есть массив чисел, нужно подсчитать кол-во подмассивов, состоящих из нулей.
Читать далее »Компонент Button использует material дизайн и имеет некоторые предопределенные стили, которые иногда хочется изменить. Мне чаще всего требуется убрать UPPERCASE с текста кнопки.
Читать далее »Рассмотрим как организовать юнит-тестирование для проектов на TS. Предполагается, что проект управляется npm. Потребуется установить три пакета для организации Unit-тестирования — это mocha (читается как мокка
), chai и nyc.
Увидел эту задачу на leetcode — https://leetcode.com/problems/simplify-path/, где не так часто встречаются задачи близкие к практиктическому программированию. Ранее уже приводил решение подобной задачи для PHP. Здесь порешаем её уже на TS.
Читать далее »Получение доступа к классу в режиме рантайм добавляет известной гибкости. Одна из типичных задач — создание экземпляра класса по его имени.
Читать далее »Мне понадобилось какое то время, чтобы понять верный подход к решению, делюсь подробным разбором этой задачи.
Ставится она так: есть набор (массив) элементов, чаще всего чисел, требуется найти следующей по порядку возрастания набор этих элементов.
Читать далее »Android studio предоставляет набор стандартных компонентов, таких как TextView, LinearLayout и пр. Но довольно часто приходится оперировать группами таких базовых компонентов при создании интерфейса. К примеру, текстовый ввод часто сопровождается текстовой меткой поля, получается комбинация TextView + TextEdit.
При динамическом создании таких групп, состоящих из базовых компонентов, вы раз за разом настраиваете какие то аттрибуты, погрязая в своеобразной рутине.
Читать далее »