71. 简化路径

  思路: 把当前目录压入栈中,遇到..弹出栈顶,最后返回栈中元素.

class Solution {

  
    public String simplifyPath(String path) {
        String[] strs = path.split("/");
        Stack<String> stack = new Stack<>();
        for(int i = 0; i < strs.length; i++) {
            if(strs[i].equals("..")) {
                if(!stack.empty()) stack.pop();
            }
            else if (!"".equals(strs[i]) && !".".equals(strs[i])) stack.push(strs[i]);
        }
        if(stack.empty()) return "/";
        StringBuilder sb = new StringBuilder();
        for(String s : stack) {
            sb.append("/" + s);
        }
        return sb.toString();
    }
}
原文地址:https://www.cnblogs.com/yonezu/p/13269292.html