BitLib
BitLib copied to clipboard
Provides a bit-vector, an optimized replacement of the infamous std::vector<:b:ool>. In addition to the bit-vector, the library also provides implementations of STL algorithms tailored for bit-vec...
Given the nature of a bit vector (specifically, given that there are only 2 states for the bits), `sort` ought to be implementable in O(n) time using a single comparison,...
`auto` will deduce the type as a reference type, even without the `&`. This means that: ```cpp bit::bit_vector bvec{"110110"}; auto b = bvec.front() // Should be copied, auto -> bit_value,...
Add bit version of [`std::search_n`](https://en.cppreference.com/w/cpp/algorithm/search_n) - [ ] `search_n` implementation - [ ] `search_n` tests - [ ] `search_n` benchmark
Add bit version of [`std::search`](https://en.cppreference.com/w/cpp/algorithm/search) - [ ] `search` implementation - [ ] `search` tests - [ ] `search` benchmark Note: There are multiple different implementations of bit-searching algorithms, but...
Add bit version of [`std::mismatch`](https://en.cppreference.com/w/cpp/algorithm/mismatch) - [ ] `mismatch` implementation - [ ] `mismatch` tests - [ ] `mismatch` benchmark
Add bit version of [`std::move_backward`](https://en.cppreference.com/w/cpp/algorithm/move_backward) - [ ] `move_backward` implementation - [ ] `move_backward` tests - [ ] `move_backward` benchmark
Add bit version of [`std::shuffle`](https://en.cppreference.com/w/cpp/algorithm/shuffle) - [ ] `shuffle` implementation - [ ] `shuffle` tests - [ ] `shuffle` benchmark
Add bit version of [`std::sample`](https://en.cppreference.com/w/cpp/algorithm/sample) - [ ] `sample` implementation - [ ] `sample` tests - [ ] `sample` benchmark
Add bit version of [`std::transform`](https://en.cppreference.com/w/cpp/algorithm/transform) - [ ] `OR` implementation - [ ] `OR` tests - [ ] `OR` benchmark - [ ] `AND` implementation - [ ] `AND` tests...