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

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


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

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

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

  • l :=s के पात्रों की सूची बनाएं

  • मैं :=k-1

  • जबकि मैं <आकार का l + k −

    • a :=l[सूचकांक 0 से i-k+1 तक]

    • b :=l[इंडेक्स i-k+1 से i+1 तक]

    • c :=l [इंडेक्स i+1 से अंत तक]

    • l :=a concatenate b[index 0 to end] concatenate c

    • मैं :=मैं + 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. पायथन में दिए गए स्ट्रिंग में शब्दों को उल्टा करें

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

  1. केसफोल्ड () पायथन में स्ट्रिंग

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

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

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