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

सी ++ प्रोग्राम एक ही टेक्स्ट को बार-बार सर्च करने के लिए (जैसे डेटा स्ट्रक्चर बनाकर बाइबिल)

यह एक ही टेक्स्ट को बार-बार खोजने के लिए C++ प्रोग्राम है।

एल्गोरिदम

Begin
   Take the original string and pattern to be searched as input.
   org_len = store the length of original string
   pat_len = store the length of pattern
   for i = 0 to (org_len - pat_len)
      for j = 0 to pat_len - 1
         if (org[i + j] != patt[j])
            if (j == pat_len)
               Increase m.
      Print the position at which the pattern is found
   if (m == 0)
      Print no match found
   else
      Print the total number of instances found.
   return 0
End

उदाहरण

#include<iostream>
#include<string.h>
using namespace std;
int main() {
   char org[150], patt[150];
   int i, j, m = 0, org_len, pat_len;
   cout << "\nEnter Original String:";
   cin >> org;
   cout << "Enter Pattern to Search:";
   cin >> patt;
   org_len = strlen(org); //store the length of original string
   pat_len = strlen(patt); //store the length of pattern
   for (i = 0; i <= (org_len - pat_len); i++) {
      for (j = 0; j < pat_len; j++) {
         if (org[i + j] != patt[j])
         break;
      }
      if (j == pat_len) {
         m++;
         cout << "\nPattern Found at Position: " << i;
      }
   } if (m == 0)
   cout << "\nNo Match Found.";
   else
      cout << "\nTotal Number of Instances Found = " << m;
   return 0;
}

आउटपुट

Enter Original String:thisistutorialspoint.thisisac++program
Enter Pattern to Search:is

Pattern Found at Position: 2
Pattern Found at Position: 4
Pattern Found at Position: 23
Pattern Found at Position: 25
Total Number of Instances Found = 4

  1. C++ में त्रिभुज के केंद्रक को खोजने का कार्यक्रम

    इस समस्या में, हमें एक 2D सरणी दी गई है जो त्रिभुज के तीन शीर्षों के निर्देशांकों को दर्शाती है। हमारा काम C++ में त्रिभुज के Centroid को खोजने के लिए एक प्रोग्राम बनाना है। सेंट्रोइड त्रिभुज का वह बिंदु है जिस पर त्रिभुज की तीन माध्यिकाएं प्रतिच्छेद करती हैं। माध्यिका त्रिभुज की वह रेखा है जो त्र

  1. सी ++ प्रोग्राम में बाइनरी सर्च?

    द्विआधारी खोज, जिसे अर्ध-अंतराल खोज, लॉगरिदमिक खोज या बाइनरी चॉप के रूप में भी जाना जाता है, एक खोज एल्गोरिथ्म है जो एक क्रमबद्ध सरणी के भीतर लक्ष्य मान की स्थिति का पता लगाता है। बाइनरी खोज लक्ष्य मान की तुलना सरणी के मध्य तत्व से करती है। यदि वे समान नहीं हैं, तो आधा जिसमें लक्ष्य झूठ नहीं बोल सकत

  1. C++ में पेड़ों के निर्माण के बिना समान BST की जाँच करें

    हमारे पास BST के तत्वों का प्रतिनिधित्व करने के लिए दो सरणियाँ हैं। यदि हम उस सरणी से बाएं से दाएं तत्व लेते हैं, और BST बनाते हैं, तो दोनों सरणियों से लेकर हम एक ही BST बनाएंगे। हमें यह जांचना होगा कि दोनों एक जैसे बन रहे हैं या नहीं। लेकिन बाधा यह है कि हम बीएसटी नहीं बना सकते। मान लीजिए कि दो सरण