コード例 #1
0
 public void TestInit()
 {
     Assert.AreEqual(_sut.Count(), _count);
     for (int i = 0; i < _count; ++i)
     {
         Assert.AreEqual(i, _sut.Find(i));
     }
 }
コード例 #2
0
        public void WhenCall_Union_ShouldReturnCorrectComponentAndConnectedResults()
        {
            // Arrange
            var testDataSet = FakeUnionData.Data();

            // Act
            foreach (var obj in testDataSet)
            {
                int  p = (int)obj[0];
                int  q = (int)obj[1];
                int  componentCount = (int)obj[2];
                int  dot1           = (int)obj[3];
                int  dot2           = (int)obj[4];
                bool res            = (bool)obj[5];
                unionFind.Union(p, q);

                // Assert
                Assert.Equal(unionFind.Count(), componentCount);
                Assert.Equal(unionFind.Connected(dot1, dot2), res);
            }
        }
コード例 #3
0
 public void TestUnion()
 {
     sut.Union(0, 1);
     Assert.AreEqual(1, sut.Find(0));
     Assert.AreEqual(9, sut.Count());
 }
コード例 #4
0
 public void QuickUnionWeightedTests()
 {
     _unionFind = new UnionFindQuickUnionWeightedSize(Size);
     Assert.AreEqual(ExpectedString, GetNotConnectedUnions());
     Assert.AreEqual(ExpectedCount, _unionFind.Count());
 }
コード例 #5
0
 public int Count()
 {
     return _unionFind.Count();
 }