今天偶然发现,STL中的pair可以做map的键值,那么其同样可以做set, unordered_set, unordered_map
的键值.通过定义map<pair<int, int>, int>
就可以表示一个三元组,<a, b, v>
.其可表示节点a到节点b的权重,通过这样一数据结构可以简单表示一个特殊应用的图(例如只找其边的连接值),表示图通用的方法可通过两个map:map<int, map<int, int>>
.第二个map表示第一个点连接的所有点,这样可以更加高效的查询.
C++ STL pair
最新推荐文章于 2022-11-22 10:31:23 发布