Simplify Path
Problem
Given an absolute path for a file (Unix-style), simplify it.
Example
"/home/", => "/home"
"/a/./b/../../c/", => "/c"
Solution
What we need to do:
- Remove
.
(current directory) and..
(parent directory). - Replace multiple consecutive slashes with a single slash
- The path starts with a single slash
/
- No trailing slashes
To deal with ..
, it may be easier to use Linked List, if your chosen languages provides this.
To deal with /
, we can simply split by /
and re-join the string.