Releases: Traroth/odd-collections
Releases · Traroth/odd-collections
odd-collections 1.0 — Unconventional Java data structures
odd-collections 1.0
Four original data structures that go beyond what the Java standard library offers — each with an unsynchronized and a thread-safe variant.
What's included
- ChunkyList — an unrolled linked list with pluggable growing/shrinking strategies, native Spliterator, and optimized bulk operations
- SymmetricMap — a bijective map with O(1) reverse lookup, strict/permissive insertion modes, and inverse map support
- TreeList — a sorted list with no duplicates, backed by an order-statistic red-black tree (O(log n) for all operations including indexed access), with live subList views
- MultiMap — a recursive multi-dimensional map with chained reads/writes and getOrCreate for on-the-fly level creation
Highlights
- Full java.util.List / java.util.Map compliance where applicable
- Thread-safe variants backed by ReentrantReadWriteLock with snapshot-based iterators
- All collections are Serializable
- JML contracts (@invariant, @requires, @ensures) on all classes
- 693 tests — 0 failures
- Clean Checkstyle and SpotBugs
Requirements
- Java 11 or later
License