📜  是地图排序的 c++ (1)

📅  最后修改于: 2023-12-03 15:40:10.085000             🧑  作者: Mango

是地图排序的 C++ 算法介绍

什么是地图排序?

Map 排序,也叫字典序排序,是根据 map 容器中的键(key)对其对应的值(value)进行排序的算法。当键值对中键的数据类型不是整数时,不能使用 STL 中的 sort 算法进行排序,需要使用 map 排序的算法。

C++ 代码
#include <iostream> 
#include <map> 

using namespace std; 

int main() 
{ 
    map<string, int> m{ 
        {"apple", 10}, 
        {"orange", 6}, 
        {"banana", 3}, 
        {"pear", 2}, 
        {"grape", 5} 
    }; 

    // 使用 map 自带的比较器进行排序 
    map<string, int>::iterator it; 
    for (it = m.begin(); it != m.end(); ++it) { 
        cout << it->first << " : " << it->second << endl; 
    } 

    return 0; 
} 
代码说明

这段代码定义了一个 map 容器 m,存储了若干个字符串和对应的整数值。通过遍历 map 容器的键值对输出其中的元素,已完成根据字典序排序的目的。

在 map 自带的比较器下,它会自动按照键(也就是字符串)的字典序来对键值对进行排序。

总结

map 排序是很常见的题目和算法,我们可以使用 C++ 中的 map 容器进行排序。只需要在定义容器时规定好键值对的数据类型,map 容器就可以自动根据键的字典序进行排序。