以下是一个用 C++ 语言实现的示例代码,用于找到小于给定数字 11 的最大键值:

#include <iostream>
#include <map>

int main() {
    std::map<int, std::string> myMap;
    myMap[1] = 'A';
    myMap[10] = 'B';
    myMap[14] = 'C';
    myMap[18] = 'D';
    myMap[22] = 'E';
    myMap[26] = 'F';
    myMap[30] = 'G';
    myMap[35] = 'H';
    myMap[39] = 'I';

    int target = 11;
    int maxKey = -1;

    for (const auto& pair : myMap) {
        if (pair.first < target && pair.first > maxKey) {
            maxKey = pair.first;
        }
    }

    if (maxKey != -1) {
        std::cout << 'The maximum key less than ' << target << ' is ' << maxKey << std::endl;
    } else {
        std::cout << 'No key found less than ' << target << std::endl;
    }

    return 0;
}

这段代码首先创建了一个 std::map 对象 myMap,其中包含了给定的键值对。然后,它使用一个循环遍历 myMap 中的所有键值对。在循环中,它检查每个键是否小于给定目标值 11,并且是否大于已找到的最大键值。如果是,则更新 maxKey 为当前键值。最后,它输出找到的最大键值。

运行此示例代码将输出:

The maximum key less than 11 is 10
C++ map 中查找小于给定数字的最大键值

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

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