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

सी ++ प्रोग्राम में दो ट्रैवर्सल और एक ट्रैवर्सल का उपयोग करके सरणी से एक तत्व हटाएं

इस ट्यूटोरियल में, हम सीखेंगे कि दो लूप और ऑन लूप वाले एलीमेंट को कैसे डिलीट किया जाए। हमें तत्व को हटाने की आवश्यकता नहीं है। हम हटाए जाने वाले तत्व को अगले तत्वों से बदल देंगे।

दो ट्रैवर्सल

आइए दो छोरों का उपयोग करके सरणी से किसी तत्व को हटाने के चरणों को देखें।

  • ऐरे को इनिशियलाइज़ करें और एलिमेंट को डिलीट करें।

  • तत्व को हटाने के लिए एक फ़ंक्शन लिखें।

    • सरणी पर पुनरावृति करें और तत्व की खोज करें।

    • यदि तत्व मिल जाता है, तो लूप को तोड़ दें।

    • यदि तत्व पाया जाता है, तो सरणी का आकार कम करें।

    • सभी तत्वों को उनके पिछले सूचकांक में ले जाएँ।

    • सरणी का नया आकार लौटाएं।

उदाहरण

आइए कोड देखें।

#include <bits/stdc++.h>
using namespace std;
int searchAndDeleteElement(int arr[], int n, int k) {
   int i;
   // searching for the element
   for (i = 0; i < n; i++) {
      if (arr[i] == k) {
         break;
      }
   }
   // if the element is present
   if (i < n) {
      // moving all the elements to previous index after k
      n = n - 1;
      for (int j = i; j < n; j++) {
         arr[j] = arr[j+1];
      }
   }
   // returning updated index
   return n;
}
int main() {
   int n = 6, k = 4;
   int arr[] = {1, 2, 3, 4, 5, 6};
   int updatedLength = searchAndDeleteElement(arr, n, k);
   // printing the array
   for (int i = 0; i < updatedLength; i++) {
      cout << arr[i] << " ";
   }
   cout << endl;
   return 0;
}

आउटपुट

यदि आप उपरोक्त प्रोग्राम को निष्पादित करते हैं, तो आपको निम्न परिणाम प्राप्त होंगे।

1 2 3 5 6

एक ट्रैवर्सल

आइए एक लूप का उपयोग करके किसी तत्व को ऐरे से हटाने के चरणों को देखें।

  • ऐरे को इनिशियलाइज़ करें और एलिमेंट को डिलीट करें।

  • तत्व को हटाने के लिए एक फ़ंक्शन लिखें।

    • सरणी पर पुनरावृति करें और तत्व की खोज करें।

    • यदि तत्व पाया जाता है, तो कथन को छोड़ दें।

    • सभी तत्वों को उनके पिछले सूचकांक में ले जाएँ।

    • यदि तत्व पाया जाता है, तो n - 1 लौटाएं और n लौटाएं।

उदाहरण

आइए कोड देखें।

#include <bits/stdc++.h>
using namespace std;
int searchAndDeleteElement(int arr[], int n, int k) {
   // checking for the last element
   if (arr[n-1] == k) {
      return n - 1;
   }
   bool isElementFound = false;
   for (int i = 0; i < n; i++) {
      // checking for k
      if (arr[i] == k && !isElementFound) {
         isElementFound = true;
         continue;
      }
      // if the element is already found move all the element to their previous indexes
      if (isElementFound) {
         arr[i-1] = arr[i];
      }
   }
   // returning updated n
   if (isElementFound) {
      return n - 1;
   }
   return n;
}
int main() {
   int n = 6, k = 4;
   int arr[] = {1, 2, 3, 4, 5, 6};
   int updatedLength = searchAndDeleteElement(arr, n, k);
   // printing the array
   for (int i = 0; i < updatedLength; i++) {
      cout << arr[i] << " ";
   }
   cout << endl;
   return 0;
}

आउटपुट

यदि आप उपरोक्त कोड चलाते हैं, तो आपको निम्न परिणाम प्राप्त होंगे।

1 2 3 5 6

निष्कर्ष

यदि ट्यूटोरियल में आपके कोई प्रश्न हैं, तो उनका टिप्पणी अनुभाग में उल्लेख करें।


  1. सी ++ प्रोग्राम हीप सॉर्ट एल्गोरिथम का उपयोग करके 10 तत्वों की एक सरणी को सॉर्ट करने के लिए

    हीप सॉर्ट बाइनरी हीप डेटा संरचना पर आधारित है। बाइनरी हीप में पैरेंट नोड के चाइल्ड नोड्स अधिकतम हीप के मामले में उससे छोटे या उसके बराबर होते हैं, और पैरेंट नोड के चाइल्ड नोड्स मिन हीप के मामले में उससे बड़े या उसके बराबर होते हैं। हीप सॉर्ट में सभी चरणों की व्याख्या करने वाला एक उदाहरण इस प्रकार ह

  1. सी ++ प्रोग्राम पॉइंटर का उपयोग करके एक ऐरे के तत्वों तक पहुंचने के लिए

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

  1. PHP प्रोग्राम अनसेट फ़ंक्शन का उपयोग करके सरणी से एक तत्व को हटाने के लिए

    अनसेट फ़ंक्शन का उपयोग करके ऐरे से किसी तत्व को हटाने के लिए, PHP कोड इस प्रकार है - उदाहरण <?php    $my_array = array("Joe", "Ben", "Mary", "Barun", "Sona", "Mona");    unset($my_array[4]);    print_r("