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

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


मान लीजिए हमारे पास nums नामक संख्याओं की एक सूची है, हम लगातार समान मान वाले तत्वों को सबलिस्ट में पैक करेंगे। हमें ध्यान रखना है कि यदि सूची में केवल एक घटना है तो भी यह अपनी खुद की सबलिस्ट में होनी चाहिए।

इसलिए, यदि इनपुट nums = [5, 5, 2, 7, 7, 7, 2, 2, 2, 2] जैसा है, तो आउटपुट [[5, 5], [2], [7, 7, 7], [2, 2, 2, 2]] होगा।

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

  • यदि nums खाली है, तो
    • एक नई सूची वापस करें
  • result := एक सूची जिसमें nums[0] को समाहित करने वाली एक और सूची हो
  • j := 0
  • i के लिए 1 से nums के आकार तक की रेंज में, करें
    • यदि nums[i], nums[i - 1] के समान नहीं है, तो
      • result के अंत में एक नई सूची जोड़ें
      • j := j + 1
    • nums[i] को result[j] के अंत में जोड़ें
  • result वापस करें

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

उदाहरण

class Solution:    def solve(self, nums):       if not nums:          return []       result = [[nums[0]]]       j = 0       for i in range(1, len(nums)):          if nums[i] != nums[i - 1]:             result.append([])             j += 1             result[j].append(nums[i])       return result ob = Solution() nums = [5, 5, 2, 7, 7, 7, 2, 2, 2, 2] print(ob.solve(nums))

इनपुट

[5, 5, 2, 7, 7, 7, 2, 2, 2, 2]

आउटपुट

[[5, 5], [2], [7, 7, 7], [2, 2, 2, 2]]

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

    मान लीजिए हमारे पास nums नामक संख्याओं की एक सूची है, और हमें nums में सबसे लंबी सबलिस्ट की लंबाई ढूंढनी है जिसमें लगातार संख्याओं के बीच असमानता का संबंध बारी-बारी से कम-से-कम और अधिक-से-अधिक ऑपरेशन के बीच बदलता हो। पहले दो संख्याओं की असमानता या तो कम-से-कम या अधिक-से-अधिक हो सकती है। उदाहरण के लि

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

    समस्या विवरण संख्याओं की एक सूची nums दी गई है, हमें प्रत्येक क्रमागत सम पूर्णांक को आपस में एक्सचेंज करना है। उदाहरण इनपुट: [4, 5, 6, 8, 10] आउटपुट: [6, 5, 4, 10, 8] व्याख्या: 4 और 6 स्वैप हुए, फिर 8 और 10 स्वैप हुए। 5 विषम है इसलिए अपरिवर्तित रहा। एल्गोरिदम temp = None इनिशियलाइज़ करें सूची के

  1. - Python में सूची में लगातार तत्वों की जोड़ी

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