如何使用LinkedList类的AddAfter方法

时间:2014-08-07 19:21:17

标签: c# linked-list

在MSDN上查看后,我发现我应该有以下代码的目标节点:

var listOffences = new LinkedList<string>();
listOffences.AddFirst("aaa");
listOffences.AddAfter("bbb"); // Requires target node

我不知道如何获得第一个节点所需的信息,有人能指出我正确的方向吗?

2 个答案:

答案 0 :(得分:6)

AddFirst将返回您可以在AddAfter

中使用的新添加的节点
var listOffences = new LinkedList<string>();
var firstNode = listOffences.AddFirst("aaa");
// you may not need the `secondNode` returned. 
var secondNode = listOffences.AddAfter(firstNode, "bbb"); // Requires target node

或者如果不需要第二个节点引用那么:

listOffences.AddAfter(firstNode, "bbb"); 

答案 1 :(得分:1)

要获取链表的第一个节点,您可以使用LinkedList.First。

var listOffences = new LinkedList<string>();
listOffences.AddFirst("aaa");
var firstNode = listOffences.First;
listOffences.AddAfer(firstNode, "bbb");

或者,您可以使用find方法查找特定值。

var listOffences = new LinkedList<string>();
listOffences.AddFirst("aaa");
listOffences.AddLast("bbb");
listOffences.AddLast("ccc");
listOffences.AddAfter(listOffences.Find("bbb"), "ddd");

本节细分:

  1. 创建LinkedList
  2. 首先添加“aaa”
  3. 将“bbb”添加到列表末尾
  4. 将“ccc”添加到列表的末尾
  5. 找到包含“bbb”的节点,并在“bbb”节点后面的列表中添加“ddd”。