Given an absolute path for a file (Unix-style), simplify it.
For example,
path="/home/", =>"/home"
path="/a/./b/../../c/", =>"/c"  
Corner Cases:
- Did you consider the case where path ="/../"? In this case, you should return"/".
- Another corner case is the path might contain multiple slashes'/'together, such as"/home//foo/"In this case, you should ignore redundant slashes and return"/home/foo".
Solution: stack, .表示该directory,忽略;..表示上一directory,弹出stack
    public String simplifyPath(String path) {
        if(path == null || path.length() == 0){
            return "";
        }
        String[] parts = path.trim().split("/");
        Deque<String> stack = new LinkedList<>();
        for(String part : parts) {
            if(part == null || part.length() == 0 || part.equals(".")){
                continue;
            }
            if(part.equals("..")){
                if(!stack.isEmpty()){
                    stack.pollLast();
                }
                continue;
            }
            stack.offerLast(part);
        }
        StringBuilder sb = new StringBuilder();
        if(stack.isEmpty()){
            return "/";
        }
        while(!stack.isEmpty()){
            sb.append('/').append(stack.pollFirst());
        }
        return sb.toString();
    }