阅读量:0
在C#中可以通过自定义双向链表类来实现双向链表。以下是一个简单的双向链表的实现方式:
public class Node<T> { public T Data { get; set; } public Node<T> Next { get; set; } public Node<T> Previous { get; set; } public Node(T data) { Data = data; Next = null; Previous = null; } } public class DoublyLinkedList<T> { private Node<T> head; private Node<T> tail; public void Add(T data) { Node<T> newNode = new Node<T>(data); if (head == null) { head = newNode; tail = newNode; } else { tail.Next = newNode; newNode.Previous = tail; tail = newNode; } } public void Print() { Node<T> current = head; while (current != null) { Console.WriteLine(current.Data); current = current.Next; } } // 可以添加其他方法,如在指定位置插入节点、删除节点等 }
使用示例:
DoublyLinkedList<int> list = new DoublyLinkedList<int>(); list.Add(1); list.Add(2); list.Add(3); list.Print();
以上代码实现了一个简单的双向链表,可以通过Add方法添加节点,并通过Print方法打印链表中的所有节点。在实际应用中,可以根据需要添加其他方法来操作双向链表。