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

पायथन में टॉप के फ़्रीक्वेंट एलिमेंट्स

मान लीजिए कि हमारे पास पूर्णांक संख्याओं की एक गैर-रिक्त सरणी है। हमें kth सबसे लगातार तत्वों को वापस करना होगा। इसलिए यदि तत्व [1,1,1,1,2,2,3,3,3] और k =2 हैं, तो परिणाम होगा

औपचारिक रूप से समारोह चाहिए -

  • यदि i, j, k मौजूद है तो सही लौटें
  • ऐसे कि arr[i]

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

  • num_freq =एक खाली नक्शा, freq_list :=एक खाली नक्शा
  • प्रत्येक तत्व के लिए मैं अंकों में
    • यदि मैं num_freq में नहीं है, तो num_freq[i] :=1, अन्यथा num_freq[i] को 1 से बढ़ा दें
  • num_freq मानचित्र में प्रत्येक कुंजी-मान युग्म के लिए
    • यदि मान freq_list में मौजूद नहीं है, तो freq_list[value] :=एक सूची [कुंजी] के साथ, अन्यथा freq_list[value] सरणी में कुंजी डालें
  • res :=खाली सूची
  • i के लिए :=0 तक की संख्याओं की लंबाई
    • अगर मैं freq_list में हूं, तो freq_list[i] के तत्वों को res में जोड़ें
    • यदि रेस की लंबाई>=k, तो ब्रेक करें
  • वापसी का परिणाम

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

उदाहरण

class Solution(object):
   def topKFrequent(self, nums, k):
      number_frequency = {}
      frequency_list ={}
      for i in nums:
         if i not in number_frequency:
            number_frequency[i] = 1
         else:
            number_frequency[i] += 1
      for key,value in number_frequency.items():
         if value not in frequency_list:
            frequency_list[value] = [key]
         else:
            frequency_list[value].append(key)
      result = []
      for i in range(len(nums),0,-1):
         if i in frequency_list:
            result.extend(frequency_list[i])
         if len(result) >=k:
            break
      return result
ob1 = Solution()
print(ob1.topKFrequent([1,1,1,1,2,2,3,3,3], 2))

इनपुट

[1,1,1,1,2,2,3,3,3]
2

आउटपुट

[1, 3]

  1. पायथन में टुपल्स की सूची से शीर्ष K लगातार तत्व खोजें

    हमारे पास tuples की एक सूची है। इसमें हमें शीर्ष k बारंबारता तत्व को खोजने की आवश्यकता होती है। यदि k 3 है तो हमें सूची के अंदर टुपल्स से शीर्ष तीन तत्वों को खोजने की आवश्यकता है। डिफॉल्टडिक्ट के साथ हम डिफॉल्टडिक्ट का उपयोग करके तत्वों को एक डिक्शनरी कंटेनर में डालते हैं। फिर केवल उन तत्वों को खोज

  1. लगातार तत्वों को पायथन में सूची में जोड़ा जा रहा है

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

  1. पायथन में सीमा में तत्वों को हटाएं

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