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