Solution URL
https://leetcode.com/submissions/detail/412039107/
代码
class Solution {
public String simplifyPath(String path) {
//Time: O(n)
//Space: O(n)
String tokens[] = path.split("/");
Stack<String> s = new Stack<>();
for(String token: tokens){
//如果是'..',pop
if(token.equals("..")){
if(!s.isEmpty()){
s.pop();
}
}
//如果不是".."且不是""
else if(!token.equals(".") && !token.isEmpty()) s.push(token);
}
String res = "";
//如果栈内还有元素
if(s.isEmpty()) return "/";
while(!s.isEmpty()){
String temp = s.pop();
res = "/" + temp + res;
}
return res;
}
}