下面是一个遍历一个自定义结构体容器,并输出容器内出现了3次以上的相同数字的C++代码示例:

#include <iostream>
#include <vector>
#include <unordered_map>

struct MyStruct {
    int value;
    // 其他成员变量...
};

int main() {
    std::vector<MyStruct> myContainer = {
        {1}, {2}, {2}, {3}, {3}, {3}, {4}, {5}, {5}, {5}
    };

    std::unordered_map<int, int> countMap;

    // 统计每个数字出现的次数
    for (const auto& item : myContainer) {
        countMap[item.value]++;
    }

    // 输出出现3次以上的数字
    for (const auto& pair : countMap) {
        if (pair.second >= 3) {
            std::cout << "Number " << pair.first << " appears " << pair.second << " times." << std::endl;
        }
    }

    return 0;
}

在上面的代码中,首先定义了一个自定义结构体MyStruct,其中包含一个整型成员变量value。然后创建了一个std::vector<MyStruct>类型的容器myContainer,并初始化了一些元素。接下来,创建了一个std::unordered_map<int, int>类型的countMap,用于统计每个数字出现的次数。通过遍历myContainer,将每个数字出现的次数记录在countMap中。最后,再次遍历countMap,输出出现3次以上的数字及其出现次数

写一段遍历一个自定义结构体的容器输出容器内出现了3次以上的相同数字的c++代码

原文地址: https://www.cveoy.top/t/topic/hJjP 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录