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

C++ में एक स्ट्रिंग को दूसरी में बदलने के लिए न्यूनतम विलोपन और सम्मिलन

विवरण

आकार m और n की दो स्ट्रिंग्स str1 और str2 दी गई हैं। str1 से न्यूनतम वर्णों को हटाने और सम्मिलित करने का कार्य है ताकि इसे str2 में बदला जा सके।

Str1 = "tutorialspoint"
Str2 = "tutorials"
str1 को str2 में बदलने के लिए हमें str1 से पांच वर्ण यानी "point" हटाने होंगे।

एल्गोरिदम

1. str1 और str2 का सबसे लंबा कॉमन सबसीक्वेंस ढूंढें। इसे "lcsSize" कहें।
2. हटाए जाने वाले वर्णों की संख्या = (str1 की लंबाई - lcsSize)
3. सम्मिलित किए जाने वाले वर्णों की संख्या = (str2 की लंबाई - lcsSize)

C++ उदाहरण

#include <iostream>
#include <algorithm>
using namespace std;

int lcs(string s1, string s2, int m, int n) {
    if (m == 0 || n == 0) return 0;
    if (s1[m - 1] == s2[n - 1])
        return 1 + lcs(s1, s2, m - 1, n - 1);
    else
        return max(lcs(s1, s2, m, n - 1), lcs(s1, s2, m - 1, n));
}

void minDeletionAndInsertion(string s1, string s2) {
    int m = s1.size(), n = s2.size();
    int lcsSize = lcs(s1, s2, m, n);
    cout << "Min deletion = " << (m - lcsSize) << endl;
    cout << "Min insertion = " << (n - lcsSize) << endl;
}

int main() {
    minDeletionAndInsertion("tutorialspoint", "tutorials");
    return 0;
}

आउटपुट

Min deletion = 5
Min insertion = 0
  1. - C++ का उपयोग करके ग्रिड में एक बिंदु से दूसरे बिंदु तक जाने के तरीकों की संख्या खोजना

    इस लेख में, हमें एक प्रश्न दिया गया है जिसमें हमें बिंदु A से B तक जाने के कुल तरीकों की संख्या खोजने की आवश्यकता है जहां A और B निश्चित बिंदु हैं, यानी A ग्रिड में शीर्ष-बाएं बिंदु है और B ग्रिड में नीचे-दाएं बिंदु है। उदाहरण के लिए: इनपुट: N = 5 आउटपुट: 252 इनपुट: N = 4 आउटपुट: 70 इनपुट: N = 3

  1. - C++ में एक स्ट्रिंग के सबस्ट्रिंग्स की संख्या जो दूसरी स्ट्रिंग में मौजूद हैं

    इस लेख में, हमें दो स्ट्रिंग्स दी गई हैं, और हमें यह पता लगाना है कि पहली स्ट्रिंग के कितने सबस्ट्रिंग दूसरी स्ट्रिंग में पाए जा सकते हैं (सटीक सबस्ट्रिंग कई बार हो सकती है)। उदाहरण के लिएइनपुट: string1 = fogl    string2 = google आउटपुट: 6 व्याख्या: string1 के string2 में मौजूद सबस्ट्रिंग्

  1. C++ में स्ट्रिंग के सबस्ट्रिंग्स की संख्या निकालना C++ में स्ट्रिंग के सबस्ट्रिंग्स की संख्या निकालना

    इस लेख में, आप एक दी गई स्ट्रिंग में बनने वाले सबस्ट्रिंग्स (गैर-खाली) की संख्या निकालने के दृष्टिकोण के बारे में जानेंगे।इनपुट: string = moon आउटपुट: 10 व्याख्या: सबस्ट्रिंग्स हैं m, o, o, n, mo, oo, on, moo, oon और moon। इनपुट: string = yellow आउटपुट: 21समाधान खोजने का दृष्टिकोणमान लें स्ट्रिंग की