ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Kimi LeetCode 71. 简化路径 Python3实现

Kimi    LeetCode 71. 简化路径 Python3实现 LeetCode 71「简化路径」把 Unix 风格的绝对路径规范化为最短形式。规则.忽略、..弹出上级、多个/视为一个、返回以/开头。思路栈按/切分后依次处理每一段或.忽略..栈非空则弹出其他入栈最后栈中元素用/拼接。因为只关心上级目录而不用匹配同级栈是最直观的结构实际list即可。Python3 代码classSolution:defsimplifyPath(self,path:str)-str:stack[]forseginpath.split(/):ifsegorseg.:continueelifseg..:ifstack:stack.pop()else:stack.append(seg)return//.join(stack)复杂度时间 O(n)切分和拼接都是线性空间 O(n)最坏情况全是目录名栈存所有段几个边界情况根目录路径/→拼接后返回//../→ 栈空时..不起作用返回//a//b/./c/../→ 栈为[a, b]返回/a/b/a/../../..→ 连续弹到空为止返回/split(/)天然处理了连续斜杠产生空字符串被忽略无需特殊处理。
返回列表