我必须实现财富算法来构建 Voronoi 图。
该算法的重要部分是一种称为“海滩线数据结构”的数据结构。
它是一个二叉平衡树,类似于 AVL,但不同之处在于数据仅存储在叶子上(还有其他区别,但对问题不重要)。
我不确定如何实现它。显然,“按原样”使用 AVL 是行不通的,因为在平衡 AVL 时,叶子节点可以成为内部节点,反之亦然。
我还尝试在 wikipedia 上查看其他一些已知的数据结构,但没有一个适合需求。我已经看到一些使用链表执行此操作的实现,但这并不好,因为搜索链表是 O(n),并且它需要 O(log n) 才能使算法有效。