All Downloads are FREE. Search and download functionalities are using the official Maven repository.

src.it.unimi.dsi.bits.package.html Maven / Gradle / Ivy

Go to download

The DSI utilities are a mishmash of classes accumulated during the last twenty years in projects developed at the DSI (Dipartimento di Scienze dell'Informazione, i.e., Information Sciences Department), now DI (Dipartimento di Informatica, i.e., Informatics Department), of the Universita` degli Studi di Milano.

There is a newer version: 2.7.3
Show newest version

Main classes manipulating bits

Main classes manipulating bits.

Package Specification

The {@link it.unimi.dsi.bits.BitVector} interface is the basis for bit vector manipulation. The {@link it.unimi.dsi.bits.LongArrayBitVector} implementation is its main implementation. The idea is to offer an efficent but easy-to-use bit-vector class by allowing access under many different views. For instance, a bit vector can be seen as a {@link it.unimi.dsi.fastutil.longs.LongBigList} of integers of fixed width. Or as a sorted set of integers, where the positions of the bits set to one represent elements.

Whenever another object has to be turned into a bit string, you can provide a {@link it.unimi.dsi.bits.TransformationStrategy} to that purpose. The static container {@link it.unimi.dsi.bits.TransformationStrategies} has several ready-made transformations, and some useful wrapping methods.

Warning: implementing all features of {@link it.unimi.dsi.bits.LongArrayBitVector} has not been easy. There may be bugs.





© 2015 - 2024 Weber Informatics LLC | Privacy Policy