public void OneElem() { var sol = new LinkedListCycle(); var head = new ListNode(1); Assert.IsFalse(sol.HasCycle(head)); head.next = head; Assert.IsTrue(sol.HasCycle(head)); }
public void TestMethod1(int[] head, int pos, bool expected) { // Arrange LinkedListCycle question = new LinkedListCycle(); ListNode headNode = null; if (head != null && head.Length > 0) { headNode = new ListNode(head[0]); ListNode node = headNode; ListNode cycle = null; if (pos == 0) { cycle = headNode; } for (int i = 1; i < head.Length; i++) { node.next = new ListNode(head[i]); node = node.next; if (pos == i) { cycle = node; } } node.next = cycle; } // Act bool actual = question.HasCycle(headNode); // Assert Assert.AreEqual(expected, actual); }
public void Given_an_cycle_list_when_check_hasCycle_then_should_return_has_cycle() { CycleNodes(); var linkedListCycle = new LinkedListCycle(); var result = linkedListCycle.HasCycle(_node1); Assert.True(result); }
public void HasCycleTestCase1() { var values = new[] { 3, 2, 0, -4 }; var linkedList = CommonHelpers.GetCycledLinkedList(values, 2); LinkedListCycle.HasCycle(linkedList).Should().BeTrue(); }
public void Given_an_acyclic_list_when_check_has_cycle_then_should_return_not_has_cycle() { CycleNodes(); _node4.Next = null; var linkedListCycle = new LinkedListCycle(); var result = linkedListCycle.HasCycle(_node1); Assert.False(result); }
public void HasCycle1() { var n1 = new ListNode(1); n1.Next = n1; var sut = new LinkedListCycle(); var actual = sut.HasCycle(n1); Assert.True(actual); }
public void ThreeElem() { var sol = new LinkedListCycle(); var head = new ListNode(1, new ListNode(2, new ListNode(3))); Assert.IsFalse(sol.HasCycle(head)); head.next.next.next = head; Assert.IsTrue(sol.HasCycle(head)); head.next.next.next = head.next; Assert.IsTrue(sol.HasCycle(head)); head.next.next.next = head.next.next; Assert.IsTrue(sol.HasCycle(head)); }
public void HasCycle2() { var n1 = new ListNode(1); var n2 = new ListNode(2); var n3 = new ListNode(3); n1.Next = n2; n2.Next = n3; var sut = new LinkedListCycle(); var actual = sut.HasCycle(n1); Assert.False(actual); }
public void HasCycle3() { var n1 = new ListNode(1); var n2 = new ListNode(2); var n3 = new ListNode(3); var n4 = new ListNode(4); var n5 = new ListNode(5); n1.Next = n2; n2.Next = n3; n3.Next = n4; n4.Next = n5; n5.Next = n2; var sut = new LinkedListCycle(); var actual = sut.HasCycle(n1); Assert.True(actual); }
public void Given_an_empty_node_when_check_hasCycle_then_should_return_not_has_cycle() { var linkedListCycle = new LinkedListCycle(); var result = linkedListCycle.HasCycle(null); Assert.False(result); }
public void HasCycleTestCase2() { var linkedList = new MySinglyLinkedList(1); // No cycle LinkedListCycle.HasCycle(linkedList).Should().BeFalse(); }