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

पता लगाएं कि किसी सरणी में C++ में एक बेमेल के साथ एक स्ट्रिंग है या नहीं

मान लीजिए कि हमारे पास एक स्ट्रिंग s है, और स्ट्रिंग्स A की एक और सरणी है। हमें यह पता लगाना है कि क्या सरणी में एक स्ट्रिंग है जिसमें विभिन्न लंबाई की वर्तमान स्ट्रिंग से एक-वर्ण अंतर है। मान लीजिए कि स्ट्रिंग "केला" की तरह है, और सरणी ["बाना", "नारंगी", "बनबा", "बनपी"] जैसी दिखती है, परिणाम सही होगा, क्योंकि एक स्ट्रिंग बनबा है, यहां केवल एक वर्ण है एक केले से अलग।

इस समस्या को हल करने के लिए, हम कुछ चरणों का पालन करेंगे -

  • दिए गए स्ट्रिंग s के माध्यम से ट्रैवर्स करें, और सरणी में प्रत्येक स्ट्रिंग की जांच करें, फिर arr में प्रत्येक स्ट्रिंग के लिए इन चरणों का पालन करें -

    • जांचें कि क्या गिरफ्तारी में स्ट्रिंग की लंबाई स्ट्रिंग s के साथ समान है

    • यदि लंबाई समान हैं, तो जांचें कि क्या कोई एकल वर्ण बेमेल है या नहीं, यदि हां, तो सही लौटें, अन्यथा गलत।

उदाहरण

#include<iostream>
#include<vector>
using namespace std;
bool hasOneCharMismatch(vector<string>arr, string s) {
   int n = arr.size();
   if (n == 0)
      return false;
   for (int i = 0; i < n; i++) {
      if (arr[i].size() != s.size())
         continue;
      bool difference = false;
      for (int j = 0; j < (int)arr[i].size(); j++) {
         if (arr[i][j] != s[j]) {
            if (!difference)
               difference = true;
            else {
               difference = false;
               break;
            }
         }
      }
      if (difference)
         return true;
   }
   return false;
}
int main() {
   vector<string> arr;
   arr.push_back("bana");
   arr.push_back("orange");
   arr.push_back("banaba");
   arr.push_back("banapy");
   if(hasOneCharMismatch(arr, "banana")){
      cout << "One character mismatch found";
   }
   else{
      cout << "One character mismatch not found";
   }
}

आउटपुट -

One character mismatch found

  1. C++ में स्ट्रिंग्स का ऐरे

    स्ट्रिंग कीवर्ड का उपयोग करके C++ में स्ट्रिंग्स की सरणी बनाई जा सकती है। यहां हम इस दृष्टिकोण का उपयोग करके C++ प्रोग्राम पर चर्चा कर रहे हैं। एल्गोरिदम Begin Initialize the elements of array by string keyword. And take string as input. Print the array. End. उदाहरण कोड #include<iostream>

  1. जांचें कि स्ट्रिंग में सी ++ में उप-स्ट्रिंग है या नहीं

    यहां हम देखेंगे कि कैसे स्ट्रिंग लाइब्रेरी फ़ंक्शंस का उपयोग C++ में स्ट्रिंग्स से मिलान करने के लिए किया जा सकता है। यहां हम मुख्य स्ट्रिंग में सबस्ट्रिंग की घटनाओं को प्राप्त करने के लिए खोज () ऑपरेशन का उपयोग कर रहे हैं। यह खोज () विधि पहला स्थान लौटाती है जहाँ स्ट्रिंग पाई जाती है। यहां हम सभी म

  1. सी ++ में एक डिफ़ॉल्ट मान के साथ सामान्य सरणी का प्रारंभ

    पूरे सरणी को बहुत ही सरलता से शून्य से आरंभ किया जा सकता है। यह नीचे दिखाया गया है। int arr[10] = {0}; हालांकि, उपरोक्त विधि का उपयोग करके संपूर्ण सरणी को गैर-शून्य मान में प्रारंभ करना संभव नहीं है। यह नीचे दिखाया गया है। int arr[10] = {5}; उपरोक्त उदाहरण में, केवल पहले तत्व को 5 से प्रारंभ किया