71.Simplify Path|Java最短コード実装


原題リンク:
71. Simplify Path
【考え方】
この問題は文字列とスタックの基本的な操作を調べます.それ自体は難しくありません.
    public String simplifyPath(String path) {
        Stack<String> stack = new Stack<String>();
        String temp = "";
        for (int i = 0; i < path.length(); i++) {
            while (i < path.length() && path.charAt(i++) == '/')  //  '/'
                i++;
            while (i < path.length() && path.charAt(i) != '/') {  //       temp 
                temp += path.charAt(i);
                i++;
            }
            if (temp.equals("..") && !stack.isEmpty())  //   "..",    ,     (       )
                stack.pop();
            else if (!temp.equals(".") && !temp.equals("..") && !temp.equals(""))  //  
                stack.add(temp);
            temp = "";
        }
        while (!stack.isEmpty())
            temp = "/" + stack.pop() + temp;
        return temp == "" ? "/" : temp;
    }

252/252
 test cases passed. Runtime: 11 ms  Your runtime beats 63.37% of javasubmissions.
最適化を歓迎します.