1 unstable release
0.1.0 | Apr 3, 2023 |
---|
#10 in #overlap
125 downloads per month
25KB
555 lines
merged_range
A crate that can merge overlapping ranges
Overview
merged_range is used to query whether the given range is contained in the existing range, if it is contained, return true, otherwise return false. it uses a sorted vector to store ranges. and it can merge the new range with the existing ranges. insert and query time complexity is both O(logn).
Example
add dependency to Cargo.toml
[dependencies]
merged_range = "0.1.0"
then use it in your code
use merged_range::MergedRange;
let mut mr = MergedRange::new();
mr.insert_range(&(1..10));
mr.insert_range(&(5..20));
assert_eq!(mr.contains_range(&(3..15)), true);
assert_eq!(mr.contains_range(&(10..21)), false);
License
This project is licensed under the MIT license.
Dependencies
~31KB