我有一组范围。每个范围的格式为
{startOffset: 1, endOffset: 10, id: [1]}
我需要将这些范围拆分为具有与之关联的ID的唯一范围。例如,如果输入是
[{startOffset: 1, endOffset: 10, id: [1] },
{startOffset: 5, endOffset: 15, id: [2] },
{startOffset: 13, endOffset: 20, id: [3] }]
然后我希望输出为
[{startOffset: 1, endOffset: 4, id: [1]},
{startOffset: 5, endOffset: 10, id: [1,2]},
{startOffset: 11, endOffset: 12, id: [2] },
{startOffset: 13, endOffset: 15, id: [2,3]},
{startOffset: 16, endOffset: 20, id: [3]}]
是否有优化算法来执行此操作?