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

लगातार तत्वों के लिए जोड़े गिनने के लिए पायथन कार्यक्रम

मान लीजिए कि हमारे पास एक संख्यात्मक स्ट्रिंग है जिसमें कुछ अंक हैं। अंक कई बार हो सकते हैं। हमें कुछ जोड़े (अंक, गिनती) वापस करना है, यह दर्शाता है कि कौन सा अंक लगातार कितनी बार आया है। इस समस्या को हल करने के लिए हम groupby() फ़ंक्शन का उपयोग कर सकते हैं जो itertools लाइब्रेरी के अंतर्गत आता है। यह एक इटरेटर ऑब्जेक्ट को अंदर लौटाएगा जिसमें प्रत्येक आइटम पहले स्थान पर होगा और दूसरा समूह दूसरे स्थान पर होगा। हमें प्रत्येक जोड़ी के लिए समूह द्वारा वस्तुओं की संख्या गिननी होगी।

इसलिए, यदि इनपुट s ="11522226551" जैसा है, तो आउटपुट [(1, 2), (5, 1), (2, 4), (6, 1), (5, 2), ( 1, 1)] क्योंकि शुरुआत में 1 दो बार मौजूद होता है, फिर सिंगल 5 फिर चार 2एस और इसी तरह।

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

  • it :=s के लिए groupby फ़ंक्शन को कॉल करें
  • रिट:=एक नई सूची
  • इसमें प्रत्येक जोड़ी (अंक, जीपी) के लिए, करें
    • रिट में (जीपी की सूची का अंक और लंबाई) डालें
  • रिटर्न रिटर्न

उदाहरण

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

from itertools import groupby

def solve(s):
   it = groupby(s)
   ret = []
   for digit, gp in it:
      ret.append((int(digit), len(list(gp))))
   return ret

s = "11522226551"
print(solve(s))

इनपुट

"11522226551"

आउटपुट

[(1, 2), (5, 1), (2, 4), (6, 1), (5, 2), (1, 1)]

  1. पायथन में समान तत्वों को सबलिस्ट में पैक करने का कार्यक्रम

    मान लीजिए कि हमारे पास संख्याओं की एक सूची है, हम समान मूल्य के लगातार तत्वों को उप-सूचियों में पैक करेंगे। हमें यह ध्यान रखना होगा कि सूची में केवल एक ही घटना है जो अभी भी अपनी उपसूची में होनी चाहिए। इसलिए, यदि इनपुट अंकों की तरह है =[5, 5, 2, 7, 7, 2, 2, 2, 2], तो आउटपुट [[5, 5], [2], [7, 7, 7],

  1. लगातार 1 के बिना बाइनरी स्ट्रिंग्स की संख्या गिनने के लिए पायथन प्रोग्राम

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें एक धनात्मक पूर्णांक N दिया गया है, हमें लंबाई N के साथ उपलब्ध सभी संभावित भिन्न बाइनरी स्ट्रिंग्स को गिनने की आवश्यकता है ताकि स्ट्रिंग में कोई क्रमागत 1 मौजूद न हो। आइए अब नीचे दिए गए कार्यान्वयन में समाधान देख

  1. QuickSort के लिए पायथन प्रोग्राम

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें एक सरणी दी गई है, हमें इसे क्विकॉर्ट की अवधारणा का उपयोग करके क्रमबद्ध करने की आवश्यकता है यहां हम पहले सरणी को विभाजित करते हैं और क्रमबद्ध सरणी प्राप्त करने के लिए अलग विभाजन को सॉर्ट करते हैं। आइए अब नीचे दि