刷leetcode-文件夹操作日志搜集器 | 刷题打卡

120 阅读1分钟

一、题目描述:

原题地址

leetcode1598

二、思路分析:

这几天都在刷栈,这个典型的栈思维。

  • 遇到../,出栈
  • 遇到./,不动
  • 其他,进栈 最后栈的长度就是到主文件夹的步数

三、AC 代码:

const minOperations = function (logs) {
  const path = logs.reduce((acc, item) => {
    if (item === '../') {
      acc.pop();
      return acc;
    }
    if (item === './') {
      return acc;
    }
    acc.push(item);
    return acc;
  }, []);
  return path.length;
};

四、总结:

  • 遇到将最后一个扔出去的情景,想想栈