c++unordered_map反向遍历
时间: 2023-10-20 07:35:01 浏览: 186
图的遍历的c++程序
要反向遍历一个 `unordered_map`,你可以使用逆向迭代器(`reverse_iterator`)来实现。以下是一个示例代码:
```c++
#include <iostream>
#include <unordered_map>
int main() {
std::unordered_map<int, std::string> myMap = {{1, "one"}, {2, "two"}, {3, "three"}};
for (auto itr = myMap.rbegin(); itr != myMap.rend(); ++itr) {
std::cout << "Key: " << itr->first << ", Value: " << itr->second << std::endl;
}
return 0;
}
```
这个代码将输出:
```
Key: 3, Value: three
Key: 2, Value: two
Key: 1, Value: one
```
在 `for` 循环中,我们使用 `rbegin()` 和 `rend()` 来获取逆向迭代器的起始和结束位置,然后通过 `++itr` 来向前移动迭代器。通过 `itr->first` 和 `itr->second` 可以访问键和值。
希望这个示例对你有帮助!如果你还有其他问题,请随时提问。
阅读全文