笛卡尔树
引入
笛卡尔树是一种二叉树,每一个节点由一个键值二元组
(图源自维基百科)
上面这棵笛卡尔树相当于把数组元素值当作键值
竞赛中使用笛卡尔树时,常用数组下标作为二元组的键值
用栈构建笛卡尔树
过程
我们考虑将元素按下标顺序依次插入到当前的笛卡尔树中。那么每次我们插入的元素必然在这棵树的右链(右链:即从根节点一直往右子树走,经过的节点形成的链)的末端。于是我们执行这样一个过程,从下往上比较右链节点与当前节点
本页面最近更新:2024/7/30 18:20:55,更新历史
发现错误?想一起完善? 在 GitHub 上编辑此页!
本页面贡献者:GavinZhengOI, sshwy, ouuan, ksyx, mgt, Enter-tainer, Ir1d, ouuan, StudyingFather, AngelKitty, HeRaNO, iamtwz, jimmyas, kenlig, littleyinhee, megakite, zhouyuyang2002
本页面的全部内容在 CC BY-SA 4.0 和 SATA 协议之条款下提供,附加条款亦可能应用