TS: функция преобразования к каноническому пути

Увидел эту задачу на leetcode — https://leetcode.com/problems/simplify-path/, где не так часто встречаются задачи близкие к практиктическому программированию. Ранее уже приводил решение подобной задачи для PHP. Здесь порешаем её уже на TS.

Задача упростить заданный UNIX путь, используя следующие правила:

  • /.. — спуститься на уровень ниже,
  • // — серия слешей должны трактоваться как один слеш,
  • слеш в конце пути можно опустить,
  • «.» — одиночная точка — ссылка на текущий каталог, т.е. по сути её можно опустить.

Решение

Разобьём начальный путь по символу «/», потом соберем канонический путь, следуя правилам выше.

Мало букафф? Читайте есчо !

GreyCode генератор

Май 3, 2023 г.

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

Читать

Поиск самой длинной петли в графе

Март 26, 2023 г.

Как говорили учителя в школе - а теперь для самых умных задача со звездочкой. "Longest cycle in a graph" отмечена как сложная задача на leetcode. Давайте разберем как её решить. Дан массив, который описывает ориентированный граф. В каждой ячейке ...

Читать

Задача о наибольшей сумме монет

Апрель 15, 2023 г.

Решаем задачу № 2218 с leetcode - Maximum Value of K Coins From Piles. В названии фигурирует слова монеты и стопки. Если представить себе, что монеты могут быть произвольного номинала, то да - суть именно такая. У нас есть стопки монет, и дано число ...

Читать

Задача о поиске всех подходящих под-сум

Июль 1, 2023 г.

№560 leetcode Subarray Sum Equals K. Есть массив чисел, и дано значение k. Надо найти все последовательные под-массивы сумма которых равна k. В условиях также сказано, что числа в массиве могут быть как положительные, так и отрицательные. Если ...

Читать
 

Комментарии к «TS: функция преобразования к каноническому пути»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: