本文整理汇总了C#中DoublyLinkedList.AddAfter方法的典型用法代码示例。如果您正苦于以下问题:C# DoublyLinkedList.AddAfter方法的具体用法?C# DoublyLinkedList.AddAfter怎么用?C# DoublyLinkedList.AddAfter使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DoublyLinkedList
的用法示例。
在下文中一共展示了DoublyLinkedList.AddAfter方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: AddAfterTailPUT
public void AddAfterTailPUT([PexAssumeUnderTest]IList<int> values, int toAddValue)
{
PexAssume.IsTrue(values.Count > 1);
PexAssume.IsFalse(values.Contains(toAddValue));
DoublyLinkedList<int> dll = new DoublyLinkedList<int> (values);
dll.AddAfter(dll.Tail, toAddValue);
PexAssert.AreEqual(toAddValue, dll.Tail.Value);
PexAssert.AreEqual(values[values.Count - 1], dll.Tail.Previous.Value);
}
示例2: AddAfterTailTest
public void AddAfterTailTest()
{
DoublyLinkedList<int> dll = new DoublyLinkedList<int> {10};
dll.AddAfter(dll.Head, 20);
Assert.AreEqual(20, dll.Tail.Value);
Assert.AreEqual(10, dll.Tail.Previous.Value);
}
示例3: AddAfterTest
public void AddAfterTest()
{
DoublyLinkedList<int> dll = new DoublyLinkedList<int> {10, 20, 30};
dll.AddAfter(dll.Head.Next, 25);
Assert.AreEqual(25, dll.Head.Next.Next.Value);
Assert.AreEqual(20, dll.Head.Next.Next.Previous.Value);
Assert.AreEqual(30, dll.Head.Next.Next.Next.Value);
Assert.AreEqual(25, dll.Tail.Previous.Value);
}
示例4: AddAfterPUT
public void AddAfterPUT([PexAssumeUnderTest]IList<int> values, int toAddValue)
{
PexAssume.IsFalse(values.Contains(toAddValue));
DoublyLinkedList<int> dll = new DoublyLinkedList<int>(values);
if (values.Count == 0)
{
dll.AddAfter(dll.Head, toAddValue);
PexAssert.IsFalse(true, "InvalidOperationException was expected");
}
dll.AddAfter(dll.Head.Next, toAddValue);
if (values.Count == 1)
{
PexAssert.IsFalse(true, "ArgumentNullException was expected");
}
PexAssert.AreEqual(toAddValue, dll.Head.Next.Next.Value);
PexAssert.AreEqual(values[1], dll.Head.Next.Next.Previous.Value);
if (values.Count > 2)
{
PexAssert.AreEqual(values[2], dll.Head.Next.Next.Next.Value);
if (values.Count == 3)
PexAssert.AreEqual(toAddValue, dll.Tail.Previous.Value);
}
}
示例5: CountPUT
public void CountPUT([PexAssumeUnderTest]IList<int> values, int randomPick1)
{
PexAssume.IsFalse(values.Contains(randomPick1));
PexAssume.IsTrue(values.Count > 1);
DoublyLinkedList<int> dll = new DoublyLinkedList<int> (values);
dll.RemoveFirst();
dll.RemoveLast();
PexAssert.AreEqual(values.Count-2, dll.Count);
dll.Add(randomPick1);
dll.AddAfter(dll.Head, values[0]);
dll.AddBefore(dll.Head.Next, values[values.Count-1]);
PexAssert.AreEqual(values.Count+1, dll.Count);
}
示例6: AddAfterNullNodeTest
public void AddAfterNullNodeTest()
{
DoublyLinkedList<int> dll = new DoublyLinkedList<int> {10};
dll.AddAfter(null, 10);
}
示例7: AddAfterNoNodesTest
public void AddAfterNoNodesTest()
{
DoublyLinkedList<int> dll = new DoublyLinkedList<int>();
dll.AddAfter(dll.Head, 10);
}
示例8: CountTest
public void CountTest()
{
DoublyLinkedList<int> dll = new DoublyLinkedList<int> {10, 5};
dll.RemoveFirst();
dll.RemoveLast();
dll.Add(10);
dll.AddAfter(dll.Head, 30);
dll.AddBefore(dll.Head.Next, 20);
Assert.AreEqual(3, dll.Count);
}