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

C++ में सरणी को कम रूप (Hashing) में परिवर्तित करें


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

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

उदाहरण

#include <bits/stdc++.h> using namespace std; //सरणी को उसके कम रूप में परिवर्तित करना void convert(int arr[], int n){    // सरणी के तत्वों की प्रतिलिपि बनाना    int temp[n];    memcpy(temp, arr, n*sizeof(int));    sort(temp, temp + n);    //हैश टेबल बनाना    unordered_map<int, int> umap;    int val = 0;    for (int i = 0; i < n; i++)    umap[temp[i]] = val++;    //हैश टेबल में मान डालना    for (int i = 0; i < n; i++)    arr[i] = umap[arr[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 :\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++ फंक्शन में 2D ऐरे पास करना

    ऐरे को फंक्शन में तर्क के रूप में पास किया जा सकता है। इस प्रोग्राम में, हम इसे फंक्शन में पास करके 2 डायमेंशनल ऐरे के तत्वों को प्रदर्शित करेंगे। एल्गोरिदम Begin 2D ऐरे n[][] को फंक्शन show() में पास किया जाता है। फंक्शन show() को कॉल करें, ऐरे n (n) को नेस्टेड फॉर लूप का उपयोग करके ट्रैवर

  1. - C++ में int को string में कैसे कन्वर्ट करें?

    आप C से itoa फ़ंक्शन का उपयोग करके int को string में कन्वर्ट कर सकते हैं। उदाहरण #include<iostream> int main() {    int a = 10;    char *intStr = itoa(a);    string str = string(intStr);    cout << str; } आउटपुट यह आउटपुट देगा: 10 यह पूर्णांक को

  1. - C++ फ़ंक्शन में ऐरे पास करना

    C++ पूरे ऐरे को फ़ंक्शन में आर्गुमेंट के रूप में पास करने की अनुमति नहीं देता। हालांकि, आप ऐरे के नाम को बिना इंडेक्स के निर्दिष्ट करके ऐरे का पॉइंटर पास कर सकते हैं। यदि आप सिंगल-डायमेंशन ऐरे को फ़ंक्शन में आर्गुमेंट के रूप में पास करना चाहते हैं, तो आपको फ़ंक्शन फॉर्मल पैरामीटर को निम्नलिखित तीन