C#内的LinkedList类是内部封装好的泛型双向链表类提供了常用的增删改查与遍历方式。using System; using System.Collections.Generic; namespace lesson10 { class Program { static void Main(string[] args) { LinkedListint linkedList new LinkedListint(); #region 增删查改 //增加 //1.链表尾添加元素 linkedList.AddLast(1); linkedList.AddLast(2); linkedList.AddLast(3); //2.链表头添加元素 linkedList.AddFirst(4); linkedList.AddFirst(5); linkedList.AddFirst(6); //3.在某结点后添加一个结点(先找再加) LinkedListNodeint n1 linkedList.Find(4); linkedList.AddAfter(n1, 999); //4.在某结点前添加一个结点(先找再加) linkedList.AddBefore(n1, 666); //删除 //1.移除头结点 linkedList.RemoveFirst(); //2.移除尾结点 linkedList.RemoveLast(); //3.移除指定结点 linkedList.Remove(3); //4.清空 linkedList.Clear(); //********************************** linkedList.AddLast(1); linkedList.AddLast(2); linkedList.AddLast(3); linkedList.AddFirst(4); linkedList.AddFirst(5); linkedList.AddFirst(6); //*********************************** //查找 //1.查找头结点 LinkedListNodeint head linkedList.First; //2.查找尾结点 LinkedListNodeint tail linkedList.Last; //3.找到指定结点 LinkedListNodeint node linkedList.Find(3); //4.判断是否包含 if (linkedList.Contains(4)) { Console.WriteLine(true); } //修改(先查再改) linkedList.First.Value 888; #endregion #region 遍历 //1.foreach遍历 foreach (int item in linkedList) { Console.WriteLine(item); } Console.WriteLine(**************************************); //2.从头到尾通过结点遍历 LinkedListNodeint current linkedList.First; while (current ! null) { Console.WriteLine(current.Value); current current.Next; } Console.WriteLine(**************************************); //3.从尾到头通过结点遍历 LinkedListNodeint current2 linkedList.Last; while (current2 ! null) { Console.WriteLine(current2.Value); current2 current2.Previous; } #endregion } } }