Every day a leetcode
题目来源:1598. 文件夹操作日志搜集器
解法1:模拟
设置一个计数器count,记录返回主文件夹所需的最小步数,初始化为0。
分三种情况讨论:
- “. . /” :移动到当前文件夹的父文件夹。如果已经在主文件夹下,则 继续停留在当前文件夹 。count=max(count-1,0)
- “. /” :继续停留在当前文件夹。count不变
- “x/” :移动到名为 x 的子文件夹中。题目数据 保证总是存在文件夹 x 。count++
代码:
int minOperations(char ** logs, int logsSize){
int ans=0;
for(int i=0;i<logsSize;i++)
{
if(!strcmp(logs[i],"../"))
{
if(ans>0) ans--;
}
else if(!strcmp(logs[i],"./")) continue;
else ans++;
}
return ans;
}
结果:

该博客介绍了如何解决一个编程问题,即根据一系列文件夹操作日志(如'../', './', 'x/'),计算返回主文件夹所需的最小步数。通过模拟这些操作,可以更新一个计数器来跟踪返回主目录的步骤。当遇到'..'时,如果不在主目录则减一,遇到'./'则保持不变,遇到'x/'则加一。最终返回计数器的值作为答案。
266

被折叠的 条评论
为什么被折叠?



