网站建设资讯

NEWS

网站建设资讯

自动获得map里key类型如何给map的key值排序?-创新互联

如何给map的key值排序?在C中,map是一种常见且易于使用的数据结构。映射是按键自动排序的,但有时我们需要按每个元素的值对映射进行排序。因为STL的sort函数不支持按值对地图排序,所以我们只能考虑另一种方法。自动获得map里key类型 如何
给map的key值排序?

这是一种非常方便的使用Multimap的方法。Multimap与map类似,每个元素分为两部分:键和值。类似地,Multimap将根据键自动排序。区别在于map中的key不允许重复,而Multimap允许key重复。通过将映射中的键和值传递到Multimap,可以按值对映射进行排序。

创新互联建站于2013年创立,是专业互联网技术服务公司,拥有项目成都做网站、网站制作网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元普宁做网站,已为上家服务,为普宁各地企业和个人服务,联系电话:028-86922220

代码如下所示:

Map<char,int>CNT,Multimap<int,char>ucntfor(Map<char,int>::iteratoritr=cnt.开始()它!=控制端()itr){ucnt.插入(pair<int,char>(ITR->second,ITR->first))}

LinkedHashMap中有一个模拟的“双向循环列表”,用于保存条目的插入顺序。我也可以用这个方法保存插入时键和值的顺序。它暂定名为orderedhashmap。主代码是从LinkedHashMap复制的。它还维护两个模拟的“双向循环链表”:keyheader和valueheader,保持键或值从小到大的顺序。当一个元素被放入时,除了将它存储在hashbucket中之外,还应该根据键的大小将它插入keyheader中,并根据值的顺序将它插入valueheader中。如果您想输出,您可以从这两个“头指针”向前或向后迭代,以获得键或值的有序条目。(可以实现正负顺序的键和值的输出,只比较数值型,如果不是数值型,可以按HashMap正常处理)。下面是测试结果:值按相反顺序输出java代码orderhashmap


本文名称:自动获得map里key类型如何给map的key值排序?-创新互联
浏览地址:http://cdweb.net/article/cdcijc.html