কম্পিউটার টিউটোরিয়াল

C#-এ LinkedList-র প্রথম ঘটনা মুছে ফেলা

C#-এ LinkedList<T> ক্লাসের Remove(T value) মেথড ব্যবহার করে নির্দিষ্ট মানের প্রথম ঘটনা (first occurrence) মুছে ফেলা যায়। এটি মানটি খুঁজে বের করে এবং প্রথম ম্যাচ করা নোডটি রিমুভ করে। সফল হলে true, না পেলে false রিটার্ন করে।

উদাহরণ ১: ডুপ্লিকেট মান থেকে প্রথমটি মুছে ফেলা

using System;
using System.Collections.Generic;

public class Demo {
    public static void Main() {
        LinkedList<string> list = new LinkedList<string>();
        list.AddLast("A");
        list.AddLast("B");
        list.AddLast("C");
        list.AddLast("A");
        list.AddLast("E");
        list.AddLast("F");
        list.AddLast("A");
        list.AddLast("H");
        list.AddLast("A");
        list.AddLast("J");

        Console.WriteLine("নোডের সংখ্যা = " + list.Count);
        Console.WriteLine("LinkedList উপাদান...");
        foreach (string res in list) {
            Console.WriteLine(res);
        }

        // "A" এর প্রথম ঘটনা মুছে ফেলা
        list.Remove("A");

        Console.WriteLine("আপডেটেড নোডের সংখ্যা = " + list.Count);
        Console.WriteLine("আপডেটেড LinkedList উপাদান...");
        foreach (string res in list) {
            Console.WriteLine(res);
        }
    }
}

আউটপুট

নোডের সংখ্যা = 10
LinkedList উপাদান...
A
B
C
A
E
F
A
H
A
j
আপডেটেড নোডের সংখ্যা = 9
আপডেটেড LinkedList উপাদান...
B
C
A
E
F
A
H
A
j

উদাহরণ ২: "Three" এর প্রথম ঘটনা মুছে ফেলা

using System;
using System.Collections.Generic;

public class Demo {
    public static void Main() {
        LinkedList<string> list = new LinkedList<string>();
        list.AddLast("One");
        list.AddLast("Two");
        list.AddLast("Three");
        list.AddLast("Three");
        list.AddLast("Three");
        list.AddLast("Four");

        Console.WriteLine("নোডের সংখ্যা = " + list.Count);
        Console.WriteLine("LinkedList উপাদান...");
        foreach (string res in list) {
            Console.WriteLine(res);
        }

        list.Remove("Three");

        Console.WriteLine("আপডেটেড নোডের সংখ্যা = " + list.Count);
        Console.WriteLine("আপডেটেড LinkedList উপাদান...");
        foreach (string res in list) {
            Console.WriteLine(res);
        }
    }
}

আউটপুট

নোডের সংখ্যা = 6
LinkedList উপাদান...
One
Two
Three
Three
Three
Four
আপডেটেড নোডের সংখ্যা = 5
আপডেটেড LinkedList উপাদান...
One
Two
Three
Three
Four

ব্যাখ্যা: Remove(T) মেথড লিস্ট ট্রাভার্স করে প্রথম ম্যাচ করা নোডটি মুছে ফেলে। এটি O(n) সময় নেয় কারণ লিস্ট সিকোয়েনশিয়ালি সার্চ করতে হয়। যদি একাধিকবার একই মান মুছে ফেলতে হয় তবে লুপ বা RemoveAll (কাস্টম ইমপ্লিমেন্টেশন) ব্যবহার করতে হবে। LinkedList মধ্যবর্তী ইনসারশন/ডিলিশনের জন্য O(1) দেয় যদি নোড রেফারেন্স থাকে।

  1. C#-এ লিস্টের প্রথম এলিমেন্ট সরানো (RemoveAt(0) / Pop)

  2. পাইথনে ডুপ্লিকেট ফার্স্ট ভ্যালু 가진 টাপল লিস্ট থেকে রিমুভ করা

  3. পাইথনে টাপল থেকে স্ট্রিং রিমুভ করা

  4. পাইথনে টাপল থেকে ডুপ্লিকেট সরানো