leetcode-71-简化路径

题解:

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

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

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

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

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

代码实现:

相关推荐
全栈小51 天前
【数据库】浙人医携手金仓数据库,打造全国首个多院区异构多活容灾架构
数据库·1024程序员节·金仓
CoderYanger3 天前
贪心算法:7.最长连续递增序列
java·算法·leetcode·贪心算法·1024程序员节
CoderYanger3 天前
贪心算法:6.递增的三元子序列
java·算法·leetcode·贪心算法·1024程序员节
CoderYanger3 天前
贪心算法:1.柠檬水找零
java·算法·leetcode·贪心算法·1024程序员节
CoderYanger3 天前
贪心算法:4.摆动序列
java·算法·leetcode·贪心算法·1024程序员节
CoderYanger3 天前
贪心算法:2.将数组和减半的最少操作次数
java·算法·leetcode·贪心算法·1024程序员节
CoderYanger3 天前
贪心算法:8.买卖股票的最佳时机
java·算法·leetcode·贪心算法·1024程序员节
CoderYanger4 天前
贪心算法:3.最大数
java·算法·leetcode·贪心算法·1024程序员节
CoderYanger4 天前
贪心算法:5.最长递增子序列
java·算法·leetcode·贪心算法·1024程序员节
liguojun20254 天前
智慧破局:重构体育场馆的运营与体验新生态
java·大数据·人工智能·物联网·重构·1024程序员节