কম্পিউটার

সি প্রোগ্রামে আপেক্ষিক ক্রমে অ্যারের উপাদানগুলির শেষ ঘটনা প্রিন্ট করুন।


উপাদান সহ একটি অ্যারে দেওয়া হয়েছে এবং কাজটি হল তালিকায় প্রদত্ত উপাদানগুলির শেষ ঘটনাগুলি মুদ্রণ করা। এখানে আমাদের শুধুমাত্র সদৃশ উপাদানগুলিকে সরিয়ে ফেলতে হবে না কিন্তু আমাদেরকে একটি অ্যারেতে উপাদানগুলির সংঘটনের ক্রম বজায় রাখতে হবে যেভাবে তারা শেষবার ঘটেছে৷

যেমন আমাদের কাছে 6টি উপাদানের একটি অ্যারে রয়েছে যাতে কিছু সদৃশ মান রয়েছে যেমন, {1,3, 2, 3, 1, 2} তাই ফলাফলটি 3 1 2 আকারে হওয়া উচিত৷

উদাহরণ

Input: a[]={4,2,2,4,1,5,1}
Output : 2 4 5 1

সি প্রোগ্রামে আপেক্ষিক ক্রমে অ্যারের উপাদানগুলির শেষ ঘটনা প্রিন্ট করুন।

অ্যালগরিদম

START
Step 1-> Declare function void printelements(int a[], int n)
   Use STL unordered_map<int, int> ele
   Loop For int i=0 and i<n and i++
      Set ele[a[i]]=i
   Loop For int i=0 and i<n and i++
      IF ele[a[i]]=i
         Print a[i]
      End
   End
Step 2 -> main()
   Declare array a[]={4,2,2,4,1,5,1}
   Declare int n=sizeof(a)/sizeof(a[0])
   Call Function printelements(a,n)
STOP

উদাহরণ

#include <bits/stdc++.h>
using namespace std;
void printelements(int a[], int n) {
   unordered_map<int, int> ele;
   for (int i = 0; i < n; i++)
      ele[a[i]] = i;
   for (int i = 0; i < n; i++) {
      if (ele[a[i]] == i)
         cout << a[i] << " ";
   }
}
int main() {
   int a[] = { 4,2,2,4,1,5,1 };
   int n = sizeof(a) / sizeof(a[0]);
   printelements(a, n);
   return 0;
}

আউটপুট

যদি আমরা উপরের প্রোগ্রামটি চালাই তবে এটি নিম্নলিখিত আউটপুট তৈরি করবে

2 4 5 1

  1. O(n) সময়ে অ্যারের বাম ঘূর্ণন এবং C প্রোগ্রামে O(1) স্থান মুদ্রণ করুন।

  2. বিজোড় অবস্থানে উপস্থিত একটি অ্যারের উপাদান প্রিন্ট করার জন্য পাইথন প্রোগ্রাম

  3. পাইথন প্রোগ্রাম বিপরীত ক্রমে একটি অ্যারের উপাদান প্রিন্ট করতে

  4. পাইথন প্রোগ্রাম একটি অ্যারের ডুপ্লিকেট উপাদান প্রিন্ট করতে