在并查集(不相交集)中附加操作 D e u n i o n Deunion Deunion,它实现的功能是取消最后一次 U n i o n Union Union的操作。
实现思想
初始化一个空栈,将每一次的 U n i o n Union Union操作的两个集合的根和其值 P u s h Push Push入栈;若执行 D e u n i o n Deunion Deunion操作时,只需要对栈进行 P o p Pop Pop操作即可。在没有路径压缩时,这个策略是有效的;若并查集(不相交集)实现了路径压缩,将使得 D e u n i o n Deunion Deunion操作很难进行,因为路径压缩有很大的概率将本来属于一个根下的元素连接到另一个根,若此时执行 U n i o n Union Union操作时,很难将其恢复。