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

C# ব্যবহার করে বিল্ট-ইন ফাংশন ছাড়া সোর্টেড অ্যারেতে মিসিং এবং রিপিটেড সংখ্যা খুঁজে বের করার পদ্ধতি


মিসিং নম্বর খুঁজে বের করতে

একটি নতুন অ্যারে তৈরি করুন এবং পুরো অ্যারেতে ট্রাভার্স করুন এবং নতুন অ্যারেতে সংখ্যাটি true করুন যদি সংখ্যাটি পাওয়া যায়। পুরো অ্যারেতে ট্রাভার্স করুন এবং প্রথম false এলিমেন্টটি রিটার্ন করুন মিসিং এলিমেন্ট হিসেবে।

রিপিটিং এলিমেন্ট খুঁজে বের করতে

নতুন অ্যারেতে থেকে প্রথম true এলিমেন্টটি হবে রিপিটেড এলিমেন্ট।

উদাহরণ

using System;

namespace ConsoleApplication
{
    public class Arrays
    {
        public void MissingNumberAndRepeatedNumber(int[] arr)
        {
            bool[] tempArray = new bool[arr.Length + 1];
            int missingelement = -1;
            int repeatingelement = -1;
            for (int i = 0; i < arr.Length; i++)
            {
                int index = arr[i];
                if (!tempArray[index])
                {
                    tempArray[index] = true;
                }
            };
            for (int i = 0; i < tempArray.Length; i++)
            {
                if (!tempArray[i])
                {
                    missingelement = i;
                    break;
                }
            }
            int[] tempArray1 = new int[arr.Length + 1];
            for (int i = 0; i < arr.Length; i++)
            {
                int index = arr[i];
                if (tempArray1[index] == 0)
                {
                    tempArray1[index] = 1;
                }
                else if (tempArray1[index] == 1)
                {
                    tempArray1[index] = 2;
                }
            };
            for (int i = 0; i < tempArray1.Length; i++)
            {
                if (tempArray1[i] == 2)
                {
                    repeatingelement = i;
                    break;
                }
            }
            Console.WriteLine(missingelement);
            Console.WriteLine(repeatingelement);
        }
    }

    class Program
    {
        static void Main(string[] args)
        {
            Arrays a = new Arrays();
            int[] arr = { 0, 1, 1, 3, 4 };
            a.MissingNumberAndRepeatedNumber(arr);
            Console.ReadLine();
        }
    }
}

আউটপুট

2 1
  1. C#-এ রিকার্শন ব্যবহার করে সংখ্যার ডিজিট সাম বের করা

  2. C#-এ জ্যাগড অ্যারে (Jagged Array) এর দৈর্ঘ্য বের করা

  3. C#-এ অ্যারের ডাইমেনশন সংখ্যা কীভাবে জানবেন?

  4. এক্সেলে ঘন এবং ঘনমূল বের করার পদ্ধতি