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

पायथन में एक स्ट्रिंग के सूचकांक जोड़े


मान लीजिए कि हमारे पास एक टेक्स्ट स्ट्रिंग और शब्द (स्ट्रिंग्स की एक सूची) है, हमें सभी इंडेक्स जोड़े [i, j] को इस तरह ढूंढना है कि सबस्ट्रिंग टेक्स्ट [i] ... टेक्स्ट [जे] शब्दों की सूची में है। तो यदि स्ट्रिंग "अबाबा" की तरह है और शब्द सरणी ["एबा", "एबी"] की तरह है, तो आउटपुट [[0,1], [0,2], [2,3], [2 होगा। ,4]]। एक बात हम देख सकते हैं, कि मैच ओवरलैप हो सकते हैं, "एबा" [0,2] और [2,4] में मेल खाता है।

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

  • res :=एक खाली सूची
  • i के लिए 0 से लेकर स्ट्रिंग की लंबाई तक
    • जे के लिए i + 1 से लेकर स्ट्रिंग की लंबाई + 1
        . तक
      • यदि स्ट्रिंग को अनुक्रमणिका i से j तक शब्दों में प्रतिस्थापित किया जाता है -
        • परिणाम सरणी में (i, j – 1) जोड़ें
  • वापसी का परिणाम

उदाहरण (पायथन)

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

class Solution(object):
   def indexPairs(self, text, words):
      result = []
      for i in range(len(text)):
         for j in range(i+1,len(text)+1):
            if text[i:j] in words:
               result.append([i,j-1])
      return result
ob1 = Solution()
print(ob1.indexPairs("ababa",["aba","ab"]))

इनपुट

"ababa"
["aba","ab"]

आउटपुट

[[0,1],[0,2],[2,3],[2,4]]

  1. एक स्ट्रिंग में समान लंबाई के शब्दों को प्रिंट करने के लिए पायथन प्रोग्राम

    इस लेख में, हम दिए गए समस्या कथन को हल करने के लिए समाधान और दृष्टिकोण के बारे में जानेंगे। समस्या कथन एक स्ट्रिंग को देखते हुए हमें स्ट्रिंग के सभी शब्दों को सम लंबाई के साथ प्रदर्शित करने की आवश्यकता है। दृष्टिकोण स्प्लिट () फ़ंक्शन का उपयोग करके इनपुट स्ट्रिंग को विभाजित करें। के लिए . का

  1. पायथन में अनुक्रम सूचकांक द्वारा पुनरावृति कैसे करें?

    पायथन में अनुक्रम वस्तुएं वस्तुओं का एक क्रमबद्ध संग्रह है। अनुक्रम में प्रत्येक आइटम (सूची, टपल और स्ट्रिंग) 0 से शुरू होने वाले सूचकांक द्वारा पहुँचा जा सकता है। किसी सूची में तत्वों को पार करने के लिए >>> L1=[10,20,30,40,50] >>> for i in range(len(L1)): print (L1[i]) 10 20 30 4

  1. एक स्ट्रिंग को पायथन में शब्दों की सूची में कैसे परिवर्तित करें?

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