Data structures 处理区间的数据结构

Data structures 处理区间的数据结构,data-structures,tree,language-agnostic,intervals,Data Structures,Tree,Language Agnostic,Intervals,我发现了一个问题,无法解决: [1…n^5]区间被划分为n个不相等的非重叠区间。 鉴于这些时间间隔及其名称,有谁能给我一个好的数据结构来回答以下问题: 输入:整数x 输出:x所在区间的名称 输入:两个整数x,y 输出:如果它们位于两个相邻的间隔中,则联合间隔/新间隔保留左间隔的名称 输入:两个整数x,y 输出:如果它们位于相同的间隔[i…j],则将其拆分为三个:[i…x-1],[x…y-1],[y…j] 如果在相邻的间隔中找不到两个值x,y,但它们之间可能有m个间隔,那该怎么办?节点中存储了名称

我发现了一个问题,无法解决:

[1…n^5]区间被划分为n个不相等的非重叠区间。 鉴于这些时间间隔及其名称,有谁能给我一个好的数据结构来回答以下问题:

  • 输入:整数x

    输出:x所在区间的名称

  • 输入:两个整数x,y

    输出:如果它们位于两个相邻的间隔中,则联合间隔/新间隔保留左间隔的名称

  • 输入:两个整数x,y

    输出:如果它们位于相同的间隔[i…j],则将其拆分为三个:[i…x-1],[x…y-1],[y…j]


  • 如果在相邻的间隔中找不到两个值x,y,但它们之间可能有m个间隔,那该怎么办?节点中存储了名称的节点应该能够处理这个问题。