Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

นับความถี่ขององค์ประกอบที่มีความถี่สูงสุดใน Python


สมมติว่าเรามีรายการตัวเลขที่เรียกว่า nums เราต้องหาองค์ประกอบที่นำเสนอบ่อยที่สุดและหาจำนวนที่เกิดขึ้นขององค์ประกอบนั้น

ดังนั้น หากอินพุตเป็น [1,5,8,5,6,3,2,45,7,5,8,7,1,4,6,8,9,10] ผลลัพธ์จะเป็น 3 ตามนั้น 5 เกิดขึ้นสามครั้ง

เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -

  • สูงสุด:=0
  • ความยาว:=ขนาดของตัวเลข
  • สำหรับ i ในช่วง 0 ถึง length-2 ให้ทำ
    • นับ:=1
    • สำหรับ j ในช่วง i+1 ถึง length-1 ทำ
      • ถ้า nums[i] เหมือนกับ nums[j] แล้ว
        • นับ :=นับ + 1
    • ถ้าสูงสุด <นับ แล้ว
      • สูงสุด:=จำนวน
  • ผลตอบแทนสูงสุด

ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -

ตัวอย่าง

class Solution:
   def solve(self, nums):
      max=0
      length=len(nums)
      for i in range(0,length-1):
         count=1
         for j in range(i+1,length):
            if(nums[i]==nums[j]):
               count+=1
               if(max<count):
                  max=count
      return max
ob = Solution()
nums = [1,5,8,5,6,3,2,45,7,5,8,7,1,4,6,8,9,10]
print(ob.solve(nums))

อินพุต

[1,5,8,5,6,3,2,45,7,5,8,7,1,4,6,8,9,10]

ผลลัพธ์

3