Tag: clyly linked list

如何向后阅读单链表?

我能想到的一种方法是反转列表然后阅读它。 但这涉及改变不好的清单。 或者我可以复制列表然后反转它,但这会使用额外的O(n)内存。 有没有更好的方法,不使用额外的内存,不修改列表,并在O(n)时间运行 反向链表代码在c#中是这样的 Void Reverse (Node head) { Node prev= null; Node current = head; Node nextNode = null; while (current!=null) { nextNode = current.Next; current.Next = prev; prev=current; current = nextNode; } head = prev; } 递归解决方案是 void ReadBackWard (Node n) { if (n==null) return; else ReadBackward(n.Next); Console.WriteLine(n.Data); }