leetcode 71 Simplify Path

用栈的思想来解决这个问题,遇到当前路径就跳过,遇到上一个路径,就删除上一个路径,剩下的情况直接入栈即可。

class Solution:
    def simplifyPath(self, path: str) -> str:
        
        stack = list()
        dirs = path.split("/")
        for dir in dirs:
            if not dir or dir == ".":
                continue
            if dir == "..":
                if stack:
                    stack.pop()
            else:
                stack.append(dir)
        return '/' + '/'.join(stack)
image.png

你可能感兴趣的:(leetcode 71 Simplify Path)