C 语言

关注公众号 jb51net

关闭
首页 > 软件编程 > C 语言 > Java C++ 文件夹操作日志搜集器

Java C++题解leetcode1598文件夹操作日志搜集器

作者:AnjaVon

这篇文章主要为大家介绍了Java C++题解leetcode1598文件夹操作日志搜集器示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

题目要求

思路:模拟

Java

class Solution {
    public int minOperations(String[] logs) {
        int res = 0;
        for (String l : logs) {
            if (l.equals("../")) // 返回父级
                res = Math.max(0, res - 1);
            else if (!l.equals("./")) // 向下进入
                res++;
        }
        return res;
    }
}

C++

class Solution {
public:
    int minOperations(vector<string>& logs) {
        int res = 0;
        for (auto & l : logs) {
            if (l == "../") // 返回父级
                res = max(0, res - 1);
            else if (l != "./") // 向下进入
                res++;
        }
        return res;
    }
};

Rust

impl Solution {
    pub fn min_operations(logs: Vec<String>) -> i32 {
        logs.into_iter().fold(0, |mut res, l| {
            if l == "../" { // 返回父级
                if res > 0 {
                    res -= 1;
                }
            }
            else if l != "./" { // 向下进入
                res += 1;
            }
            res
        })
    }
}

总结

超级简单模拟题【水了一篇】,不要考虑怎么回去,直接看怎么去的计算就可以了【又是逆向思维……】。

以上就是Java C++题解leetcode1598文件夹操作日志搜集器的详细内容,更多关于Java C++ 文件夹操作日志搜集器的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:
阅读全文