C# Interval tree class

前端 未结 5 1624
名媛妹妹
名媛妹妹 2020-12-17 05:51

I\'m looking for an interval tree C# collection class.

I need to be able to add intervals, idealy 2D, otherwise perhaps I could combine two standard 1D interval tree

相关标签:
5条回答
  • 2020-12-17 06:17

    you can find another c# implementation for an interval tree (based on a self balancing avl tree) @ http://code.google.com/p/intervaltree/

    0 讨论(0)
  • 2020-12-17 06:27

    I just wrote another implementation which can be found here: https://github.com/mbuchetics/RangeTree

    It also comes with an asynchronous version which rebuilds the tree using the Task Parallel Library (TPL).

    0 讨论(0)
  • 2020-12-17 06:29

    There is a download on the codeplex page: http://intervaltree.codeplex.com/SourceControl/list/changesets -> Right hand side -> Download

    0 讨论(0)
  • 2020-12-17 06:35

    Yet another implementation can be found at https://github.com/erdomke/RangeTree. Unlike other implementations, it aims to have an interface that is similar to IDictionary<TKey, TValue> where possible. It can be used as follows:

    var tree = new RangeTree<int, string>()
    {
        { 0, 10, "1" },
        { 20, 30, "2" },
        { 15, 17, "3" },
        { 25, 35, "4" },
    };
    
    // Alternatively, use the Add method, for example:
    // tree.Add(0, 10, "1");
    
    var results1 = tree[5]; // 1 item: [0 - 10] "1"
    
    0 讨论(0)
  • 2020-12-17 06:36

    For future visitors, I've written an implementation as well https://github.com/vvondra/Interval-Tree

    0 讨论(0)
提交回复
热议问题