কম্পিউটার

C++ এ র্যান্ডম পূর্ণসংখ্যার অ্যারেতে সমস্ত শূন্যকে শুরু করতে এবং শেষ করতে সরান


এই টিউটোরিয়ালে, আমরা একটি প্রোগ্রাম লিখতে যাচ্ছি যেটি সমস্ত শূন্যকে সামনের দিকে এবং একটিকে অ্যারের শেষ দিকে নিয়ে যায়৷

এলোমেলো পূর্ণসংখ্যা সহ শূন্য এবং একের সাথে একটি অ্যারে দেওয়া হয়েছে। আমাদের সমস্ত শূন্যগুলিকে শুরু করতে এবং অ্যারের শেষ পর্যন্ত সরাতে হবে। আসুন একটি উদাহরণ দেখি।

ইনপুট

arr = [4, 5, 1, 1, 0, 0, 2, 0, 3, 1, 0, 1]

আউটপুট

0 0 0 0 4 5 2 3 1 1 1 1

অ্যালগরিদম

  • অ্যারে শুরু করুন৷

  • একটি সূচী শুরু করুন 1.

  • প্রদত্ত অ্যারের উপর পুনরাবৃত্তি করুন৷

    • যদি বর্তমান উপাদানটি শূন্য না হয়, তাহলে বর্তমান উপাদানের সাথে সূচকে মান আপডেট করুন।

    • সূচক বাড়ান।

  • একটি লুপ লিখুন যা উপরের সূচী থেকে n এ পুনরাবৃত্তি করে

    • 1.-এ সমস্ত উপাদান আপডেট করুন

  • একইভাবে, 0 এর জন্য করুন . সূচী বাড়ানোর পরিবর্তে, অ্যারের সামনে সমস্ত শূন্য সরানোর জন্য এটি হ্রাস করুন৷

বাস্তবায়ন

C++

-এ উপরের অ্যালগরিদমের বাস্তবায়ন নিচে দেওয়া হল
#include <bits/stdc++.h>
using namespace std;
void update1And0Positions(int arr[], int n) {
   int index = 0;
   for (int i = 0; i < n; i++) {
      if (arr[i] != 1) {
         arr[index++] = arr[i];
      }
   }
   while (index < n) {
      arr[index++] = 1;
   }
   index = 0;
   for (int i = n - 1; i >= 0; i--) {
      if (arr[i] == 1) {
         continue;
      }
      if (!index) {
         index = i;
      }
      if (arr[i] != 0) {
         arr[index--] = arr[i];
      }
   }
   while (index >= 0) {
      arr[index--] = 0;
   }
}
int main() {
   int arr[] = { 4, 5, 1, 1, 0, 0, 2, 0, 3, 1, 0, 1 };
   int n = 12;
   update1And0Positions(arr, n);
   for (int i = 0; i < n; i++) {
      cout << arr[i] << " ";
   }
   cout << endl;
   return 0;
}

আউটপুট

আপনি যদি উপরের কোডটি চালান, তাহলে আপনি নিম্নলিখিত ফলাফল পাবেন।

0 0 0 0 4 5 2 3 1 1 1 1

  1. C++-এ সমস্ত স্ট্রিংকে সমান করতে অপারেশন শেষ করতে ন্যূনতম সরানো

  2. অ্যারেতে সমস্ত জোড়া (a,b) এবং (c,d) খুঁজুন যা C++ এ ab =cd সন্তুষ্ট করে

  3. অ্যারে বিভক্ত করতে এবং শেষে প্রথম অংশ যোগ করতে C++ প্রোগ্রাম?

  4. C# ব্যবহার করে পূর্ণসংখ্যার প্রদত্ত অ্যারে থেকে অ্যারের শেষ পর্যন্ত সমস্ত শূন্য কীভাবে সরানো যায়?