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

उन संख्याओं की सूची खोजने का कार्यक्रम जहां प्रत्येक K- आकार की विंडो में Python में अद्वितीय तत्व होते हैं

मान लीजिए कि हमारे पास संख्याओं की एक सूची है जिसे अंक और दूसरी संख्या k कहा जाता है, हमें k आकार की प्रत्येक विंडो में अलग-अलग संख्याओं की गिनती की सूची ढूंढनी होगी।

इसलिए, यदि इनपुट संख्या =[2, 2, 3, 3, 4], के =2 की तरह है, तो आउटपुट [1, 2, 1, 2] होगा, क्योंकि विंडोज़ [2, 2] हैं, [2, 3], [3, 3], और [3, 4]।

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

  • c :=तत्वों का अंकों और उनकी आवृत्तियों में एक शब्दकोश बनाएं

  • उत्तर :=एक नई सूची

  • k से लेकर अंकों के आकार की श्रेणी में i के लिए, करें

    • उत्तर के अंत में c का आकार डालें

    • सी [अंक [i]]:=सी [अंक [i]] + 1

    • c[nums[i - k]] :=c[nums[i - k]] - 1

    • अगर c[nums[i - k]] 0 के समान है, तो

      • c[nums[i - k]]

        . हटाएं
  • उत्तर के अंत में c का आकार डालें

  • वापसी उत्तर

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

उदाहरण

from collections import Counter

class Solution:
   def solve(self, nums, k):
      c = Counter()
      for i in range(k):
         c[nums[i]] += 1
      ans = []
      for i in range(k, len(nums)):
         ans.append(len(c))
         c[nums[i]] += 1
         c[nums[i - k]] -= 1
         if c[nums[i - k]] == 0:
            del c[nums[i - k]]
      ans.append(len(c))
      return ans

ob = Solution()
nums = [2, 2, 3, 3, 4]
print(ob.solve(nums, 2))

इनपुट

[2, 2, 3, 3, 4], 2

आउटपुट

[1, 2, 1, 2]

  1. पायथन कार्यक्रम में सूची में तत्वों का योग खोजें

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें एक सूची को पुनरावृत्त करने योग्य दिया गया है, हमें सूची के योग की गणना करने की आवश्यकता है यहां हम 3 दृष्टिकोणों पर चर्चा करेंगे जैसा कि नीचे चर्चा की गई है लूप के लिए उपयोग करना उदाहरण # sum total = 0 # creati

  1. सूची में तत्वों का योग खोजने के लिए पायथन कार्यक्रम

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

  1. सूची से एन सबसे बड़े तत्वों को खोजने के लिए पायथन कार्यक्रम

    एक पूर्णांक सूची को देखते हुए, हमारा कार्य सूची में N सबसे बड़े तत्वों को खोजना है। उदाहरण Input : [40, 5, 10, 20, 9] N = 2 Output: [40, 20] एल्गोरिदम Step1: Input an integer list and the number of largest number. Step2: First traverse the list up to N times. Step3: Each traverse find the largest va