Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C++

C++ में सरणी को कम रूप (Reduced Form) में परिवर्तित करें (युग्मों के वेक्टर का उपयोग करके)


इस ट्यूटोरियल में, हम युग्मों के वेक्टर का उपयोग करके सरणी को उसके कम रूप में परिवर्तित करने के लिए एक प्रोग्राम पर चर्चा करेंगे।

इसके लिए हमें एक सरणी प्रदान की जाएगी। हमारा कार्य दी गई सरणी को उसके कम रूप में परिवर्तित करना है जैसे कि इसमें केवल 0 से n-1 तक के तत्व हों।

उदाहरण

#include <bits/stdc++.h> using namespace std; //सरणी को उसके कम रूप में परिवर्तित करना void convert(int arr[], int n){    //युग्मों का एक वेक्टर बनाना    vector <pair<int, int> > v;    //तत्वों को उनके इंडेक्स के साथ वेक्टर में डालना    for (int i = 0; i < n; i++)       v.push_back(make_pair(arr[i], i));    sort(v.begin(), v.end());    for (int i=0; i<n; i++)    arr[v[i].second] = i; } //सरणी प्रिंट करना void print_array(int arr[], int n) {    for (int i=0; i<n; i++)       cout << arr[i] << " "; } int main(){    int arr[] = {10, 20, 15, 12, 11, 50};    int n = sizeof(arr)/sizeof(arr[0]);    cout << "Given Array is :\n";    print_array(arr, n);    convert(arr , n);    cout << "\nConverted Array:\n";    print_array(arr, n);    return 0; }

आउटपुट

Given Array : 10 20 15 12 11 50 Converted Array: 0 4 3 2 1 5

  1. - C++ STL का उपयोग करके ऐरे का गुणनफल

    यह ऐरे गुणनफल ज्ञात करने के लिए C++ प्रोग्राम का एक उदाहरण है। एल्गोरिदम Begin ऐरे के मान इनिशियलाइज़ करें। ऐरे का गुणनफल लौटाने के लिए उपयोगकर्ता परिभाषित फंक्शन accumulate को कॉल करें। समाधान प्रिंट करें। End. उदाहरण कोड #include <iostream> #include <numeric> using names

  1. C++ में new का उपयोग करके 2D ऐरे कैसे घोषित करें C++ में new का उपयोग करके 2D ऐरे कैसे घोषित करें

    एक डायनामिक 2D ऐरे मूल रूप से ऐरे के पॉइंटर्स का ऐरे होता है। यहां 3 x 4 आयाम वाले 2D ऐरे का एक आरेख है। एल्गोरिदम Begin ऐरे के आयाम घोषित करें। new का उपयोग करके 2D ऐरे a[][] को डायनामिक रूप से आवंटित करें। ऐरे को तत्वों से भरें। ऐरे प्रिंट करें। इसे हटाकर मेमोरी साफ़ करें। End

  1. - C++ में पॉइंटर का उपयोग करके सरणी के एलिमेंट्स एक्सेस करने का प्रोग्राम

    पॉइंटर्स वेरिएबल्स के मेमोरी स्थान या पते को संग्रहीत करते हैं। दूसरे शब्दों में, पॉइंटर्स एक मेमोरी स्थान को संदर्भित करते हैं और उस मेमोरी स्थान पर संग्रहीत मान को प्राप्त करना पॉइंटर को डीरेफरेंस करना कहलाता है। एक प्रोग्राम जो सरणी के एकल एलिमेंट को एक्सेस करने के लिए पॉइंटर्स का उपयोग करता है,