কম্পিউটার

C# এ উদাহরণ সহ স্ট্যাক


C#-এ স্ট্যাক ক্লাস বস্তুর একটি সাধারণ লাস্ট-ইন-ফার্স্ট-আউট (LIFO) নন-জেনারিক সংগ্রহের প্রতিনিধিত্ব করে।

স্ট্যাক ক্লাস -

এর বৈশিষ্ট্যগুলি নিম্নরূপ
Sr. No সম্পত্তি এবং বর্ণনা
1 গণনা
স্ট্যাকের মধ্যে থাকা উপাদানের সংখ্যা পায়।
2 সিঙ্ক্রোনাইজ করা হয়েছে
স্ট্যাকের অ্যাক্সেস সিঙ্ক্রোনাইজ করা হয়েছে কিনা তা নির্দেশ করে একটি মান পায় (থ্রেড নিরাপদ)।
3 SyncRoot
স্ট্যাকের অ্যাক্সেস সিঙ্ক্রোনাইজ করতে ব্যবহার করা যেতে পারে এমন একটি বস্তু পায়।

স্ট্যাক ক্লাস -

এর কিছু পদ্ধতি নিচে দেওয়া হল
Sr. No সম্পত্তি এবং বর্ণনা
1 ক্লিয়ার()
স্ট্যাক থেকে সমস্ত বস্তু সরিয়ে দেয়।
2 ক্লোন()
স্ট্যাকের একটি অগভীর অনুলিপি তৈরি করে।
3 ধারণ করে(বস্তু)
একটি উপাদান স্ট্যাকের মধ্যে আছে কিনা।
4 CopyTo(Array, Int32)
স্ট্যাককে একটি বিদ্যমান এক-মাত্রিক অ্যারেতে অনুলিপি করে, নির্দিষ্ট অ্যারে সূচক থেকে শুরু করে।
5 সমান (বস্তু)
নির্দিষ্ট বস্তু বর্তমান বস্তুর সমান কিনা তা নির্ধারণ করে।
6 GetEnumerator()
স্ট্যাকের জন্য একটি IEnumerator প্রদান করে।
7 GetHashCode()
ডিফল্ট হ্যাশ ফাংশন হিসাবে কাজ করে। (অবজেক্ট থেকে উত্তরাধিকারসূত্রে প্রাপ্ত)
8 GetType()
বর্তমান উদাহরণের ধরন পায়।
9 পিক()
এটি অপসারণ না করে স্ট্যাকের শীর্ষে বস্তুটি ফেরত দেয়।
10 পপ()
স্ট্যাকের শীর্ষে থাকা বস্তুটিকে সরিয়ে দেয় এবং ফেরত দেয়
11 পুশ(বস্তু)
স্ট্যাকের শীর্ষে একটি বস্তু সন্নিবেশ করান।

উদাহরণ

আসুন এখন কিছু উদাহরণ দেখি -

স্ট্যাকের শীর্ষে অবজেক্ট পেতে, কোডটি নিম্নরূপ -

using System;
using System.Collections.Generic;
public class Demo {
   public static void Main() {
      Stack<string> stack = new Stack<string>();
      stack.Push("A");
      stack.Push("B");
      stack.Push("C");
      stack.Push("D");
      stack.Push("E");
      stack.Push("F");
      stack.Push("G");
      stack.Push("H");
      stack.Push("I");
      stack.Push("J");
      Console.WriteLine("Count of elements = "+stack.Count);
      Console.WriteLine("Element at the top of stack = " + stack.Peek());
   }
}

আউটপুট

এটি নিম্নলিখিত আউটপুট −

তৈরি করবে
Count of elements = 10
Element at the top of stack = J
Count of elements = 10

একটি স্ট্যাকের একটি উপাদান আছে কিনা তা পরীক্ষা করতে, C# Contains() পদ্ধতি ব্যবহার করুন। নিম্নলিখিত কোড -

উদাহরণ

using System;
using System.Collections.Generic;
public class Demo {
   public static void Main() {
      Stack<int> stack = new Stack<int>();
      stack.Push(100);
      stack.Push(150);
      stack.Push(175);
      stack.Push(200);
      stack.Push(225);
      stack.Push(250);
      stack.Push(300);
      stack.Push(400);
      stack.Push(450);
      stack.Push(500);
      Console.WriteLine("Elements in the Stack:");      
      foreach(var val in stack) {
         Console.WriteLine(val);
      }
      Console.WriteLine("Count of elements in the Stack = "+stack.Count);
      Console.WriteLine("Does Stack has the element 400?= "+stack.Contains(400));
   }
}

আউটপুট

এটি নিম্নলিখিত আউটপুট −

তৈরি করবে
Elements in the Stack:
500
450
400
300
250
225
200
175
150
100
Count of elements in the Stack = 10
Does Stack has the element40400?= False

  1. C# এ Stack.Equals() পদ্ধতি

  2. সি# এ স্ট্যাক ক্লাসে পুশ বনাম পপ

  3. পুশ এবং পপ অপারেশন সহ স্ট্যাক বাস্তবায়নের জন্য সি# প্রোগ্রাম

  4. উদাহরণ সহ পাইথনে স্ট্যাক ব্যাখ্যা করুন