LeetCode71简化路径
var simplifyPath = function(path) {//用于存储栈结构let stack = [];//用于存储最终结果的字符串let str = '';//将路径字符串按 / 分割成数组let arr = path.split('/');arr.forEach(val=>{if(val && val=='..') {stack.pop();}else if(val && val !='.') {stack.push(val);}})//如果 arr 有内容:用 '/' 连接栈中元素,并在前面加上 /arr.length ? str = '/' + stack.join('/') : str = '/';return str;
};
解析
1.路径分割:
2.遍历处理每个片段:
3.处理 ..
(上级目录):
为什么遇到..就要回退一级
4.arr与str的区别
0
5.三元运算符解析