私はそのようなマルチマップを持っています:
multimap<float, obj*> mmap;
いくつかのキーが同じである可能性があるため、マルチマップを使用します。
私が達成しようとしているのは、いくつかの基準に基づいてマルチマップを個別のグループにグループ化/分割することです。たとえば、フロート キーとの差が <= しきい値であるグループが必要です。
つまり、このようなマルチマップ:
<100, obj0*>, <99, obj1*>, <1000, obj2*>, <1001, obj3*>
そして、フロートキーとの差が <= 1 であるグループにそれらを入れたいと思います。
したがって、結果は次のようになります。
grp1: <100, obj0*>, <99, obj1*>
grp2: <1000, obj2*>, <1001, obj3*>
私はstd::transform、group_byなどを見ましたが、それらは正しいアプローチではないようです。何か案は?