Если вы имеете в виду заполнение цепочек битов целым числом байтов, то вы можете сохранить объединение всех исходных цепочек битов в одну цепочку битов и сохранить словарь, значения которого являются кортежами вида (bit position, length)
.
Проблема в том, что если я правильно сделал математику, то длина этой более крупной цепочки битов может составить более 12 миллиардов бит, поэтому для bit position
потребуется пара бит больше, чем int
.Затем, если вам нужно дополнить битовую позицию, мы вернемся к квадрату.
Если, однако, количество различных длин <64, вы можете уместить поле длины в 6 бит, и вы закончитес помощью словаря, отображающего хеш-ключи для 5-байтовых кортежей, индексирующих в одну цепочку битов.Будет ли это работать для вас? </p>