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

C++ में लेक्सिकोग्राफिकल ऑर्डर में अंतिम सबस्ट्रिंग

मान लीजिए कि हमारे पास स्ट्रिंग के रूप में s है, हमें लेक्सिकोग्राफ़िक क्रम में s का अंतिम विकल्प खोजना होगा।

इसलिए, यदि इनपुट "abbbcabbc" जैसा है, तो आउटपुट "cabbc" होगा

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

  • मैं:=0, जे:=1, के:=0

  • जबकि j + k

    • यदि s[i + k], s[j + k] के समान है, तो -

      • (के द्वारा 1 बढ़ाएँ)

      • निम्नलिखित भाग पर ध्यान न दें, अगले पुनरावृत्ति पर जाएं

    • अगर s[i + k]

      • मैं :=जे

      • (जम्मू को 1 से बढ़ाएं)

    • अन्यथा

      • जे:=जे + के + 1

    • कश्मीर:=0

इंडेक्स i से अंत तक s का रिटर्न सबस्ट्रिंग

आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -

उदाहरण

#include <bits/stdc++.h>
using namespace std;
class Solution {
   public:
   string lastSubstring(string s) {
      int i = 0;
      int j = 1;
      int k = 0;
      while(j + k < s.size()){
         if(s[i + k] == s[j + k]) {
            k++;
            continue;
         }
         if(s[i + k] < s[j + k]){
            i = j;
            j++;
         }else{
            j = j + k + 1;
         }
         k = 0;
      }
      return s.substr(i, s.size() - i);
   }
};
main(){
   Solution ob;
   cout << (ob.lastSubstring("abbbcabbc"));
}

इनपुट

"abbbcabbc"

आउटपुट

cabbc

  1. सी ++ में अवरोही क्रम में एक वेक्टर को सॉर्ट करना

    सी ++ में वेक्टर को सॉर्ट करना std ::सॉर्ट() का उपयोग करके किया जा सकता है। इसे हेडर में परिभाषित किया गया है। एक स्थिर प्रकार प्राप्त करने के लिए std::stable_sort का उपयोग किया जाता है। यह बिल्कुल सॉर्ट () जैसा है लेकिन समान तत्वों के सापेक्ष क्रम को बनाए रखता है। आवश्यकता के अनुसार क्विकसॉर्ट (),

  1. सी ++ में सबस्ट्रिंग

    एक सबस्ट्रिंग एक स्ट्रिंग का एक भाग है। सी ++ में सबस्ट्रिंग प्राप्त करने के लिए एक फ़ंक्शन सबस्ट्र () है। इस फ़ंक्शन में दो पैरामीटर हैं:पॉज़ और लेन। पॉज़ पैरामीटर सबस्ट्रिंग की प्रारंभ स्थिति को निर्दिष्ट करता है और लेन एक सबस्ट्रिंग में वर्णों की संख्या को दर्शाता है। एक प्रोग्राम जो C++ में सबस

  1. C++ प्रोग्राम को लेक्सिकोग्राफिकल ऑर्डर (डिक्शनरी ऑर्डर) में तत्वों को सॉर्ट करने के लिए

    लेक्सिकोग्राफिकल ऑर्डर से पता चलता है कि किसी सूची में शब्दों को उनके अक्षरों के अनुसार वर्णानुक्रम के आधार पर कैसे क्रमबद्ध किया जाता है। उदाहरण के लिए - List of words: Harry Adam Sam Lexicographical order of words: Adam Harry Sam लेक्सिकोग्राफिकल क्रम में तत्वों को छाँटने का कार्यक्रम इस प्रकार