C&C++   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了c – 用于键的向量的STL映射大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用我已经存储在任意长的无符号整数数组中的一些二进制数据.我发现我有一些重复的数据,我想在短期内忽略重复,并删除长期导致他们的任何错误.

我正在考虑在存储之前将每个数据集插入到地图中,但只有在地图中没有找到它才能开始.我最初的想法是有一个字符串的地图,并使用memcpy作为一个锤子强制ints到一个字符数组,然后将其复制到字符串并存储字符串.这是因为我的大量数据包含相关数据前面的0(也称为NULL)的多个字节,所以绝大多数非常实际的数据被抛出.

我的下一次尝试计划是std :: map< std :: vector< unsigned char>,int>,但我意识到我不知道地图插入功能是否工作.

即使有不好的建议,还是有更好的方法解决这个问题,这是否可行?

编辑

所以有人说我没有清楚我在做什么,所以这里有一个更好的描述.

我正在努力生成一个最小生成树,因为我有一些包含我正在使用的实际结束节点的树.目标是提出选择具有最短长度的树,并覆盖所有结束节点,其中所选择的树最多彼此共享一个节点并且全部连接.我基于二进制决策树的方法,但做出一些改变希望允许更大的并行性.

而不是采用二叉树方法,我选择为每个数据集的无符号整数做出一个位向量,其中位置1中的一个指示包含相应的树.

例如,如果只是树0被包括在5树数据集中,我将从头开始

00001

从这里我可以生成

00011

00101

01001

10001

然后可以并行处理这些中的每一个,因为它们中的任何一个都不相互依赖.我为所有的单树(00010,00100等)做到这一点,我应该没有花时间正式证明它,能够生成范围(0,2 ^ n)中的所有值一次只有一次.

我开始注意到,许多数据集要比我想象的要长很多,并且启用了一个调试输出来查看所有生成的结果,一个快速的Perl脚本后来确认我有多个进程生成相同的输出.从那时起,我一直在努力解决复制品来自非常少的成功,我希望这将很好地工作,让我验证在没有,有时,3天等待的结果计算.

解决方法

你不会有这样的问题,因为std :: vector为你提供了“==”,“<”和“>”操作符:

http://en.cppreference.com/w/cpp/container/vector/operator_cmp

大佬总结

以上是大佬教程为你收集整理的c – 用于键的向量的STL映射全部内容,希望文章能够帮你解决c – 用于键的向量的STL映射所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: