Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python에서 k 번 이상 발생한 목록에서 요소를 찾는 프로그램

<시간/>

nums라는 요소 목록과 값 k가 있다고 가정합니다. 우리는 최소한 k 번 이상 발생한 요소를 찾아야 합니다.

따라서 입력이 nums =[2,5,6,2,6,1,3,6,3,8,2,5,9,3,5,1] k =3과 같으면 출력은 [2, 5,6, 3]이 되십시오.

이 문제를 해결하기 위해 다음 단계를 따릅니다. −

  • c :=숫자로 표시된 각 요소의 빈도를 포함하는 목록
  • res :=새 목록
  • c의 각 키 n에 대해 다음을 수행합니다.
    • c[n]>=k이면
      • res 끝에 n 삽입
  • 반환 결과

예시

이해를 돕기 위해 다음 구현을 살펴보겠습니다. −

from collections import Counter

def solve(nums, k):
   c = Counter(nums)
   res = []
   for n in c:
      if c[n] >= k:
         res.append(n)
   return res

nums = [2,5,6,2,6,1,3,6,3,8,2,5,9,3,5,1]
k = 3
print(solve(nums, k))

입력

[2,5,6,2,6,1,3,6,3,8,2,5,9,3,5,1], 3

출력

[2, 5, 6, 3]