71. 简化路径

https://leetcode-cn.com/problems/simplify-path/

解法一:

主要是对../的处理,返回上一级目录,这种要求要用到栈的性质,栈空表示根目录。先将路径按'/'分割,每次遇到'..'就弹栈(注意栈空时处理),遇到'.'或空白符就跳过,遇到合法字符才入栈。

class Solution:
    def simplifyPath(self, path: str) -> str:
        stack = []
        print(path.split('/'))
        for p in path.split('/'):
            if p == '..':
                if len(stack) > 0:
                    stack.pop()
            elif p == '' or p == '.':
                continue
            else:
                stack.append(p)
        return '/' + '/'.join(stack)

最后更新于