Java歪斜堆合并

| 不一定非要使用Java,但我正在尝试了解偏斜堆的合并过程。我不明白为什么下面的步骤中的粗体部分是这样。 比较两个堆的根;让p成为 根较小的堆,q 成为另一个堆。 令r为结果的名称 新堆。 令r的根为p的根 (较小的根),然后让r \正确 subtree是p的左子树。 现在,通过计算r \的左子树 递归合并p \的右子树 与q。 能否沿对称轴修改算法(例如,我对树进行镜面反射),并令r \的左子树为p \的右子树,然后递归合并到r的右边?仅仅是一种惯例还是以上面列出的方式进行操作更有效?     
已邀请:
        左右选择完全是任意的,但是一旦选择就必须坚持。毕竟,您可以只是堆,为其绘制图片,然后对其进行镜像,它仍然是有效的堆。造成这种情况的根本原因是,您可以选择任何程序,并左右互换所有出现的变量,结果程序仍然有效,并且执行完全相同的操作。     

要回复问题请先登录注册