Skip to content

2A5F/Coplt.SparseCollection

Repository files navigation

Coplt.SparseCollection

.NET Nuget MIT

Fast, cache friendly, continuous memory sparse collections with CRUD all O(1)

Example

  • SparseList

    var list = new SparseList<int>();
    
    var id = list.Add(123);
    list.Add(456);
    list.Add(789);
    
    if (list.ContainsId(id)) { }
    
    if (list.TryGetValue(id, out var v) { }
    
    var index = list.IndexById(id);
    list[index] = 111;
    
    list.RemoveAt(1);
    list.RemoveById(id);
    
    Span<int> span = list.Values;
  • PagedSparseSet

    var list = new SparseList<int>();
    var set = new PagedSparseSet<string>();
    for (int i = 0; i < 1000; i++)
    {
        var id = list.Add(i);
        set.Add(id, $"{i}");
    }

About

Fast, cache friendly, continuous memory sparse collections with CRUD all O(1)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages