leetcode-71-简化路径-题解:

时间:2024-10-25 09:50:48

1、以"/"作为分隔符对字符串进行分割得到数组names;

2、初始化一个栈stack(python中的栈使用列表实现);

3、遍历数组names;如果当前元素为".."且栈不为空,则将弹出栈顶元素;如果当前元素不为空且不是".",则将元素入栈即stack.append()。

4、将stack中的元素使用"/"进行拼接并返回。(用"/".join(stack)实现)

备注:该题核心逻辑即当元素为".."时,删除该元素的前一个元素。使用栈实现该逻辑。