Код Middle Стек и монотонный стек обновлено
Нормализация пути
Условие
Упрости абсолютный путь Unix: '/a/./b/../../c/' → '/c'. Лишние слэши убрать, выход выше корня игнорировать.
Примеры
simplifyPath("/a/./b/../../c/") // "/c"
simplifyPath("/../") // "/"
simplifyPath("/home//foo/") // "/home/foo"
Как подойти
Стек сегментов. Пустые куски от двойных слэшей отсеиваются тем же условием, что и точка. pop на пустом массиве не бросает - отдельная проверка не нужна.
Подсказки: 2
- Разрежь по слэшу и обрабатывай сегменты стеком.
- pop на пустом стеке безопасен - это и есть игнорирование выхода выше корня.
Решите в тренажёре
Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.