Я пытаюсь переместить элементы в моем списке, но когда я сравниваю последний вариант, я выхожу, прежде чем переместить элементы в свой список, связанный с перемещением. Есть ли способ сделать это до того, как узел будет вставлен в конец и не сможет выполнить цикл для перемещения элементов?Перемещение элементов в связанном списке C# .NET
LinkedList<BD> list = new LinkedList<BD>(b[arg].Values);
LinkedListNode<BD> node, terminator, next = null;
List<LinkedListNode<BD>> move = new List<LinkedListNode<BD>>();
terminator = list.First;
node = next = list.Last;
while (next != null && next != terminator)
{
node = next;
next = next.Previous;
if (IDs.Contains(node.Value.Id))
{
move.Add(node);
list.Remove(node);
}
else
{
foreach (var item in move)
{
list.AddBefore(node, item);
node = node.Previous;
}
move.Clear();
}
}
Пожалуйста редактировать свой вопрос, выберите кодовую часть и нажмите маленький «код» над редактором. Это делает код намного легче читать. – Zyphrax
@ Zyphrax: сделал это для них. –
@ Bruce227: Не могли бы вы описать, что вы пытаетесь выполнить? Вы хотите проанализировать узлы, проверить, находится ли файл DocumentVersionId узла в списке идентификаторов, а затем переместить этот узел в самую переднюю часть связанного списка? – Zyphrax