partitionasforestv3.cs

来自「Data Structures and Algorithms with Obj」· CS 代码 · 共 40 行

CS
40
字号
namespace Opus6
{
    using System;

    [Copyright("Copyright (c) 2001 by Bruno R. Preiss, P.Eng."), Version("$Id: PartitionAsForestV3.cs,v 1.3 2001/09/11 12:04:04 brpreiss Exp $")]
    public class PartitionAsForestV3 : PartitionAsForestV2
    {
        public PartitionAsForestV3(int n) : base(n)
        {
        }

        public override void Join(Set s, Set t)
        {
            PartitionAsForest.PartitionTree tree1 = (PartitionAsForest.PartitionTree) s;
            PartitionAsForest.PartitionTree tree2 = (PartitionAsForest.PartitionTree) t;
            this.CheckArguments(tree1, tree2);
            if (tree1.rank > tree2.rank)
            {
                tree2.parent = tree1;
            }
            else
            {
                tree1.parent = tree2;
                if (tree1.rank == tree2.rank)
                {
                    tree2.rank++;
                }
            }
            base.count--;
        }

        public static void Main()
        {
            PartitionAsForest.TestPartition(new PartitionAsForestV3(5));
        }

    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?