LeetCode 1589 文件夹操作日志搜集器[栈] HERODING的LeetCode之路
Posted HERODING23
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode 1589 文件夹操作日志搜集器[栈] HERODING的LeetCode之路相关的知识,希望对你有一定的参考价值。
解题思路:
这是一道很好的简单题,文件系统的结构本身就是栈的形式,所以用栈的方式解决是最合理的方式,将所在的文件结构放入栈中,随着深入和返回进行入栈出栈操作,解法很简单,但是如果稍加改编,题目可以更加复杂,比如加入绝对路径搜集,加入“…/d1/”这样退到父文件夹再往子文件夹去的操作,这些都值得思考的,代码如下:
class Solution
public:
int minOperations(vector<string>& logs)
int depth = 0;
stack<string> s;
for(int i = 0; i < logs.size(); i ++)
if(logs[i] == "./")
continue;
else if(logs[i] == "../")
if(!s.empty())
s.pop();
else
string temp = logs[i].substr(0, logs.size() - 1);
s.push(temp);
return s.size();
;
以上是关于LeetCode 1589 文件夹操作日志搜集器[栈] HERODING的LeetCode之路的主要内容,如果未能解决你的问题,请参考以下文章
10.18--一下午连肝20道leetcode题(纯C实现)