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

पायथन में समान पहले अक्षर साझा करने वाले सभी शब्दों को खोजने का कार्यक्रम

मान लीजिए कि हमारे पास लोअरकेस अक्षरों में शब्दों की एक सूची है, हमें सबसे लंबी सन्निहित सबलिस्ट की लंबाई का पता लगाना है, जहां सभी शब्दों का पहला अक्षर समान है।

इसलिए, यदि इनपुट ["she", "sells", "seashells", "on", "the", "seashore"] जैसा है, तो आउटपुट 3 होगा क्योंकि तीन सन्निहित शब्द "she", "sells" हैं। , "सीशेल्स", सभी का पहला अक्षर 's' समान है।

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

  • अधिकतम लंबाई:=0
  • curr_letter:=शून्य, curr_length:=0
  • शब्दों में प्रत्येक शब्द के लिए, करें
    • यदि curr_letter शून्य है या curr_letter शब्द [0] के समान नहीं है, तो
      • अधिकतम लम्बाई :=अधिकतम लम्बाई, curr_length
      • curr_letter:=शब्द[0], curr_length :=1
    • अन्यथा,
      • curr_length :=curr_length + 1
  • अधिकतम लंबाई और वक्र_लंबाई लौटाएं

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

उदाहरण

class Solution:
   def solve(self, words):
      maxlength = 0
      curr_letter, curr_length = None, 0
      for word in words:
         if not curr_letter or curr_letter != word[0]:
            maxlength = max(maxlength, curr_length)
            curr_letter, curr_length = word[0], 1
         else:
            curr_length += 1
      return max(maxlength, curr_length)
ob = Solution()
words = ["she", "sells", "seashells", "on", "the", "seashore"]
print(ob.solve(words))

इनपुट

["she", "sells", "seashells", "on", "the", "seashore"]

आउटपुट

3

  1. पायथन में सभी बिंदुओं को जोड़ने के लिए न्यूनतम लागत खोजने का कार्यक्रम

    मान लीजिए कि हमारे पास बिंदु (x, y) के रूप में कुछ बिंदुओं के साथ बिंदु नामक एक सरणी है। अब दो बिंदुओं (xi, yi) और (xj, yj) को जोड़ने की लागत उनके बीच मैनहट्टन दूरी है, सूत्र है |xi - xj| + |yi - yj|। हमें सभी बिंदुओं को जोड़ने के लिए न्यूनतम लागत का पता लगाना होगा। इसलिए, यदि इनपुट पॉइंट्स की तरह

  1. पायथन में गैर-साझा शब्दों की अधिकतम लंबाई खोजने का कार्यक्रम

    मान लीजिए कि हमारे पास शब्दों नामक लोअरकेस वर्णानुक्रम की एक सूची है, हमें दो अलग-अलग शब्दों की लंबाई का अधिकतम योग खोजना होगा जो एक सामान्य अक्षर साझा नहीं करते हैं। इसलिए, यदि इनपुट शब्दों की तरह है =[abcd, mno , abdcmno, amno], तो आउटपुट 7 होगा, क्योंकि शब्द साझा नहीं करते हैं कोई भी सामान्य अक्ष

  1. एक उपन्यास खोजने के लिए कार्यक्रम जहां पहले और अंतिम मान पायथन में समान हैं

    मान लीजिए कि हमारे पास संख्याओं की एक सूची है जिसे अंक कहा जाता है, हमें उन उप-सूचियों की संख्या ज्ञात करनी होगी जहां पहला तत्व और अंतिम तत्व समान हैं। इसलिए, यदि इनपुट संख्या =[10, 15, 13, 10] की तरह है, तो आउटपुट 5 होगा, जैसा कि पहले और अंतिम तत्व के साथ सबलिस्ट हैं:[10], [15], [13], [ 10], [10,