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

सी ++ प्रोग्राम किसी दिए गए अनुक्रम का सबसे लंबा उपसर्ग मिलान खोजने के लिए

यहां हम अनुक्रमों के एक सेट में सभी अनुक्रमों के लिए सबसे लंबे बाद के सामान्य को खोजने के लिए C++ प्रोग्राम पर चर्चा करेंगे।

एल्गोरिदम

Begin
Take the array of strings as input.
function matchedPrefixtill(): find the matched prefix between string s1 and s2 :
   n1 = store length of string s1.
   n2 = store length of string s2.
   for i = 0, j = 0 to i <= n1 – 1 && j <= n2 - 1
      if s1[i] != s2[j]
         break
      result.push_back(s1[i])
   return result
End
Begin
function matchedPrefix(): returns the longest matched prefix from the array of strings:
   for int i = 1 to n - 1
      pre = matchedPrefixtill(pre, a[i])
   return pre.
End
लौटाएं

उदाहरण

#include<bits/stdc++.h>
using namespace std;
string matchedPrefixtill(string s1, string s2) {
   string res;
   int n1 = s1.length(); //store length of string s1.
   int n2 = s2.length(); //store length of string s2.
   for (int i = 0, j = 0; i <= n1 - 1 && j <= n2 - 1; i++, j++) {    
      if (s1[i] != s2[j])
         break;
      res.push_back(s1[i]);
   }
   return (res);
}
string matchedPrefix (string a[], int n) {
   string pre = a[0];
   for (int i = 1; i <= n - 1; i++)
   pre = matchedPrefixtill(pre, a[i]);
   return (pre);
}
int main() {
   string a[] = {"Tutorialspoint", "Tutor", "Tutorials"}; //taking inputs
   int n = sizeof(a) / sizeof(a[0]);
   string res = matchedPrefix(a, n);
   if (res.length())
      cout<<"Longest common subsequence is matched - "<<res.c_str();
   else
      cout<<"No matched prefix";
   return (0);
}

आउटपुट

Longest common subsequence is matched - Tutor

  1. सी ++ प्रोग्राम एक स्ट्रिंग में एक चरित्र की आवृत्ति का पता लगाने के लिए

    एक स्ट्रिंग एक आयामी वर्ण सरणी है जिसे एक शून्य वर्ण द्वारा समाप्त किया जाता है। एक स्ट्रिंग में वर्णों की आवृत्ति एक स्ट्रिंग में होने की संख्या है। उदाहरण के लिए - String: Football is a sport The frequency of alphabet o in the above string is 3 किसी विशेष वर्ण की आवृत्ति ज्ञात करने का कार्यक्रम इ

  1. सी ++ प्रोग्राम एक स्ट्रिंग की लंबाई का पता लगाने के लिए

    एक स्ट्रिंग एक आयामी वर्ण सरणी है जिसे एक शून्य वर्ण द्वारा समाप्त किया जाता है। स्ट्रिंग की लंबाई शून्य वर्ण से पहले स्ट्रिंग में वर्णों की संख्या है। उदाहरण के लिए। char str[] = “The sky is blue”; Number of characters in the above string = 15 एक स्ट्रिंग की लंबाई ज्ञात करने के लिए एक

  1. पायथन में दिए गए स्ट्रिंग अनुक्रम नियमों का पालन करने के बाद nth अनुक्रम खोजने का कार्यक्रम

    मान लीजिए कि हमारे पास दो तार s, t हैं और एक अन्य धनात्मक संख्या n भी दी गई है, हमें अनुक्रम A का nवाँ पद ज्ञात करना है जहाँ - ए[0] =एस ए[1] =टी A[n] =A[n - 1] + A[n - 2] जब n सम हो, अन्यथा A[n] =A[n - 2] + A[n - 1]। उदाहरण के तौर पर, यदि s =a और t =b, तो अनुक्रम A होगा - [a, b, ba (a + b), bba (