71.简化路径

class Solution {
    public String simplifyPath(String path) {
        StringBuilder sb = new StringBuilder();
        Stack<String> stack = new Stack<>();
        String pre = "..", curr = ".";
        //char lastc = ' ';
        String[] paths = path.split("/");
        for(int i = 0; i < paths.length; i++){
            if(pre.equals(paths[i]) ){
                if(!stack.empty()){
                    stack.pop();
                }
            }
            else if(curr.equals(paths[i]) || "".equals(paths[i])){
                continue;
            }
            else {
                stack.push(paths[i]);
            }
        }
        for(int i = 0; i < stack.size(); i++){
            sb.append("/");
            sb.append(stack.get(i));
        }
        if("".equals(sb.toString())){
            return "/";
        }
        return sb.toString();
    }
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 题目 给定一个文档(Unix-style)的完全路径,请进行路径简化。 样例"/home/", => "/home...
    六尺帐篷阅读 363评论 0 1
  • 这道题让简化给定的路径,光根据题目中给的那一个例子还真不太好总结出规律,应该再加上两个例子path="/a/./b...
    杰伦哎呦哎呦阅读 282评论 0 1
  • “你或许拥有无限的财富,一箱箱珠宝与一柜柜的黄金。但你永远不会比我富有,我有一位读书给我听的妈妈。” ...
    阎雨萌妈妈阅读 602评论 0 0
  • 第一次看到海的时候,我屏住呼吸。 那没有尽头的翻卷,肆虐在风里。 远远地看,一片苍茫的世界,从脚下,到水天交际的尽...
    完颜澄阅读 494评论 0 2