5

我试图在 C# 中找到一个解决方案来扩展O(1).

List 的AddRange()方法当然是一种O(n)操作。这应该是 LinkedList 支持的东西,但是 LinkedList 没有类似的方法AddRangeLast(),并且尝试像这样组合 LinkedLists:

LinkedList<int> l1 = new LinkedList<int>(new[] { 1, 2, 3 });
LinkedList<int> l2 = new LinkedList<int>(new[] { 11, 12, 13 });
l1.AddLast(l1.First);

抛出此异常:

System.InvalidOperationException: 'LinkedList 节点已经属于一个 LinkedList。'

有谁知道在O(1)不自己实现 LinkedList 和 LinkedListNode 的情况下将列表添加到列表中的方法?

4

0 回答 0