Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C#

Duyệt Singly Linked List trong C#

C# có LinkedList<T> trong System.Collections.Generic (doubly linked list).

Ví dụ: Tạo, thêm, duyệt

using System;
using System.Collections.Generic;

public class Demo
{
    public static void Main(string[] args)
    {
        var list = new LinkedList<string>();
        list.AddLast("One");
        list.AddLast("Two");
        list.AddLast("Four");
        
        Console.WriteLine("Duyệt ban đầu...");
        foreach (var res in list)
            Console.WriteLine(res);
        
        // Thêm trước/sau node "Four"
        LinkedListNode<string> node = list.Find("Four");
        list.AddBefore(node, "Three");
        list.AddAfter(node, "Five");
        
        Console.WriteLine("Duyệt sau khi thêm...");
        foreach (var res in list)
            Console.WriteLine(res);
    }
}

Kết quả

Duyệt ban đầu...
One
Two
Four
Duyệt sau khi thêm...
One
Two
Three
Four
Five

Các method chính

  • AddFirst, AddLast
  • AddBefore(node, value), AddAfter(node, value)
  • Find(value), FindLast(value) - trả về LinkedListNode<T>
  • Remove, RemoveFirst, RemoveLast
  • Duyệt: foreach hoặc for (var node = list.First; node != null; node = node.Next)

Lưu ý: LinkedList<T> là doubly linked. Singly linked list tự implement nếu cần tiết kiệm memory.