用 Python 编写程序,在列表中查找值与其频率相同的元素

pythonserver side programmingprogramming更新于 2026/1/11 1:48:17

假设我们有一个名为 nums 的数字列表,我们必须检查列表中是否存在频率与其值相同的元素。

因此,如果输入为 [2, 4, 8, 10, 4, 4, 4],则输出将为 True

为了解决这个问题,我们将遵循以下步骤 −

  • res := 一个新的映射,用于存储按值的频率
  • 对于 res 中的每个键值对 (k,v),执行
    • 如果 k 与 v 相同,则
      • 返回 True
  • 返回 False

让我们看看下面的实现以便更好地理解 −

示例

class Solution:
   def solve(self, nums):
      res = {}
      for i in nums:
         try:
            res[i] += 1
         except:
            res[i] = 1
      for k,v in res.items():
         if k == v:
            return True
      return False
ob = Solution()
print(ob.solve([2, 4, 8, 10, 4, 4, 4]))

输入

[2, 4, 8, 10, 4, 4, 4]

输出

True

相关文章


有用资源