Crates.io | rlp-iter |
lib.rs | rlp-iter |
version | 0.2.1 |
source | src |
created_at | 2021-11-06 09:25:17.262874 |
updated_at | 2021-11-06 10:02:37.29203 |
description | An iterator following a space-filling pattern over a given range |
homepage | https://github.com/Nessex/rlp-iter |
repository | https://github.com/Nessex/rlp-iter |
max_upload_size | |
id | 477611 |
size | 390,033 |
rlp-iter (Resolving Lattice Point Iterator) is an iterator that returns a space-filling permutation of integers in a given range. Specifically, it emits integers roughly in order of the most distant integer from any other previously emitted integer.
0..=100
)Say you need an iterator over the range 0..=100
. This will emit integers in roughly the following order:
[ 0, 100, 50, 25, 75, 13, 38, 63, 88, ... ]
This iterator works on inclusive and exclusive ranges of usize
. You can access it via:
use rlp_iter::RlpIterator;
for i in (0..=100).rlp_iter() {
println!("{}", i);
}
This requires a small constant amount of memory, plus one bit of memory per value in the sampled space (required to ensure there are no duplicate values emitted).
Licensed under either of
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.