数字序列的最佳数据结构 [0:9]

Best data structure for a sequence of digits [0:9]

本文关键字:数据结构 字序 最佳 数字      更新时间:2023-10-16

在c++ 中,可以处理数字序列 [0:9] 且内存浪费最少的最佳数据类型是什么?

我想可能是这样的

typedef bitset<4> Digit;
vector<Digit> myVector;

但我认为每个bitset<4>都保留一个字节 - 与字符相同,所以它并不比普通字符串更好,是吗?

有没有更好的主意来处理这样的事情?

要存储一组 10 个值,需要 4 位。

但是在 4 位上,可以表示 16 个值。这是浪费 6/16 =37.5%。

因此,最好的表示形式将最大限度地减少浪费量。

最好的方法是存储在二进制中,其中利用了所有位的组合。