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

C#-তে Stack-কে অ্যারেতে কপি করা

Stack<T>.CopyTo(T[] array, int index) মেথড ব্যবহার করে স্ট্যাকের উপাদানগুলো একটি অ্যারেতে কপি করা যায়। কপির ক্রম স্ট্যাকের এনামারেশন ক্রমের সাথে মিলে (শীর্ষ থেকে তললগত)। লক্ষ্য অ্যারেতে নির্দিষ্ট সূচক থেকে কপি শুরু হয়।

উদাহরণ ১: পূর্ণ কপি (সূচক ০, অ্যারে আকার = Stack.Count)

using System;
using System.Collections.Generic;

public class Demo {
    public static void Main() {
        Stack<int> stack = new Stack<int>();
        stack.Push(10);
        stack.Push(20);
        stack.Push(30);
        stack.Push(40);
        stack.Push(50);
        stack.Push(60);
        stack.Push(70);
        stack.Push(80);
        stack.Push(90);
        stack.Push(100);
        
        Console.WriteLine("স্ট্যাক প্রদর্শন...");
        foreach(int val in stack) {
            Console.WriteLine(val);
        }
        
        int[] intArr = new int[stack.Count];
        stack.CopyTo(intArr, 0);
        
        Console.WriteLine("অ্যারে প্রদর্শন...");
        foreach(int val in intArr) {
            Console.WriteLine(val);
        }
    }
}

আউটপুট

স্ট্যাক প্রদর্শন...
100
90
80
70
60
50
40
30
20
10
অ্যারে প্রদর্শন...
100
90
80
70
60
50
40
30
20
10

উদাহরণ ২: বড় অ্যারেতে অফসেট ২ সহ কপি

using System;
using System.Collections.Generic;

public class Demo {
    public static void Main() {
        Stack<int> stack = new Stack<int>();
        stack.Push(10);
        stack.Push(20);
        stack.Push(30);
        stack.Push(40);
        stack.Push(50);
        
        Console.WriteLine("স্ট্যাক প্রদর্শন...");
        foreach(int val in stack) {
            Console.WriteLine(val);
        }
        
        int[] intArr = new int[10];
        stack.CopyTo(intArr, 2); // সূচক ২ থেকে শুরু
        
        Console.WriteLine("অ্যারে প্রদর্শন...");
        foreach(int val in intArr) {
            Console.WriteLine(val);
        }
    }
}

আউটপুট

স্ট্যাক প্রদর্শন...
50
40
30
20
10
অ্যারে প্রদর্শন...
0
0
50
40
30
20
10
0
0
0

দ্রষ্টব্য: Stack.CopyTo() শীর্ষের উপাদান থেকে শুরু করে কপি করে। লক্ষ্য অ্যারে বড় হলে অতিরিক্ত উপাদানগুলো ডিফল্ট মান (int-এর জন্য ০) ধারণ করে।

  1. C#-তে Array ক্লাসের Copy() মেথডের ব্যবহার

  2. C#-এ Stack ক্লাস (Stack Class)

  3. C#-এ Stack ক্লাসের Count প্রোপার্টি কী?

  4. C#-এ অ্যারে কপি (Array Copy)