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

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

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

ตัวอย่าง

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

ขั้นตอนการแก้ปัญหา

  1. max := 0
  2. length := ขนาดของ nums
  3. ลูป i จาก 0 ถึง length-2:
    • count := 1
    • ลูป j จาก i+1 ถึง length-1:
      • ถ้า nums[i] เท่ากับ nums[j] ให้ count := count + 1
    • ถ้า max < count ให้ max := count
  4. คืนค่า max

การใช้งาน

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