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

पायथन में रिवर्स स्ट्रिंग II


मान लीजिए हमारे पास एक स्ट्रिंग और एक पूर्णांक k है, हमें स्ट्रिंग की शुरुआत से गिनती करते हुए हर 2k वर्णों के लिए पहले k वर्णों को उलटना है। यदि पर्याप्त वर्ण नहीं बचे हैं, तो उन सभी को उलट दें। यदि 2k से कम वर्ण हैं लेकिन k से अधिक या बराबर हैं, तो पहले k वर्णों को उलट दें और बाकी को मूल छोड़ दें।

उदाहरण के लिए, यदि इनपुट "abcdefgh" और k = 3 है, तो आउटपुट "cbadefhg" होगा।

हल करने के चरण

  • l := s के वर्णों की सूची बनाएं
  • i := k-1
  • जब तक i < l का आकार + k:
    • a := l[0 से i-k+1 तक सूचकांक]
    • b := l[i-k+1 से i+1 तक सूचकांक]
    • c := l[i+1 से अंत तक]
    • l := a + b[उलटा] + c
    • i := i + 2*k
  • l में प्रत्येक वर्ण को जोड़कर स्ट्रिंग वापस करें

उदाहरण

class Solution:
    def reverseStr(self, s, k):
        l = list(s)
        i = k - 1
        while i < len(l) + k:
            a = l[:i - k + 1]
            b = l[i - k + 1:i + 1]
            c = l[i + 1:]
            l = a + b[::-1] + c
            i += 2 * k
        return ''.join(l)

ob = Solution()
print(ob.reverseStr("abcdefg", 3))

इनपुट

"abcdefg", 3

आउटपुट

cbadefg
  1. - Python में दी गई स्ट्रिंग में शब्दों को उल्टा करें

    हमें एक स्ट्रिंग दी गई है, और हमारा लक्ष्य स्ट्रिंग में मौजूद सभी शब्दों को उल्टा करना है। हम आउटपुट प्राप्त करने के लिए split मेथड और reversed फ़ंक्शन का उपयोग कर सकते हैं। आइए कुछ नमूना टेस्ट केस देखें।इनपुट: string = I am a python programmer आउटपुट: programmer python a am Iइनपुट: string = tutoria

  1. - पायथन में casefold() स्ट्रिंग विधि

    यह फ़ंक्शन किसी शब्द के अक्षरों को लोअरकेस में बदलने में सहायक होता है। जब दो स्ट्रिंग्स पर लागू किया जाता है तो यह उनके मानों का मिलान कर सकता है भले ही अक्षरों का केस कुछ भी हो। casefold() लागू करना नीचे दिए गए उदाहरण में हम एक स्ट्रिंग पर casefold() फ़ंक्शन लागू करते हैं और परिणाम सभी लोअरकेस अ

  1. - पायथन में स्ट्रिंग को कैसे रिवर्स करें?

    पायथन में स्ट्रिंग को रिवर्स करने के लिए स्ट्रिंग स्लाइसिंग और रेंज ऑपरेटर्स का उपयोग किया जा सकता है। उदाहरण के लिए: >>> Hello[::-1] olleH >>> Halloween[::-1] neewollaH [] ऑपरेटर कोलन : से अलग 3 नंबर ले सकता है। पहला स्टार्ट इंडेक्स है, दूसरा एंड इंडेक्स है और तीसरा स्ट्राइड है। य