【发布时间】:2009-06-11 10:26:39
【问题描述】:
我已经设置了一个标准映射来映射一些数字,此时我知道我正在从一个映射到哪些数字,例如:
std::map<int, int> myMap;
map[1] = 2;
map[2] = 4;
map[3] = 6;
但是,稍后,我想将一些数字映射到不在地图中的最低数字,例如:
map[4] = getLowestFreeNumberToMapTo(map); // I'd like this to return 1
map[5] = getLowestFreeNumberToMapTo(map); // I'd like this to return 3
有什么简单的方法吗?
当我将它们添加到地图时,我考虑构建一个有序的数字列表,这样我就可以只查找 1,而不是找到它,使用它,添加它等等。
【问题讨论】:
-
我希望最低值是 INT_MIN 和 INT_MIN+1 ?如果它是一张地图