효율적인 소수 찾기: 에라토스테네스의 체
소수란 1과 자기 자신만으로 나누어 떨어지는 자연수를 말한다. 에라토스테네스의 체는 다음과 같은 단계로 소수를 찾는다초기 설정: 2부터 원하는 최대 숫자까지의 모든 자연수를 나열한다.소수 기준 배수 제거:처음으로 2를 선택하고, 2의 배수(4, 6, 8, ...)를 모두 지운다.다음 소수인 3을 선택하고, 3의 배수(6, 9, 12, ...)를 지운다.이 과정을 계속 반복하여 소수의 배수를 모두 지운다.종료 조건: 선택한 소수가 N제곱근에 도달하면 반복을 종료한다. 이때 남아 있는 숫자들은 모두 소수다.에라토스테네스의 체는 시간 복잡도가 O(nlog(log(n))) 로, 소수를 찾는 데 있어 매우 효율적이다. 다른 소수 찾기 알고리즘, 예를 들어 소수 판별법에 비해 속도가 빠르기 때문에 대규모 소수 검색..
데이터 빈도 계산을 단순하게: 파이썬 Counter
1. Counter란 무엇인가?Counter는 파이썬의 collections 모듈에 포함된 클래스 중 하나로, 리스트나 문자열 등의 시퀀스에서 각 요소의 빈도를 쉽게 계산할 수 있는 도구다. 일종의 딕셔너리 형태로 동작하며, 요소를 키(key)로, 해당 요소가 등장한 횟수를 값(value)으로 저장한다.2. Counter의 기본 사용법Counter는 리스트나 문자열과 같은 반복 가능한 객체를 인자로 받아 그 안의 요소들이 몇 번 등장했는지를 계산해준다. 다음은 기본적인 사용 예시다from collections import Counter# 리스트에서 빈도 계산my_list = [1, 2, 2, 3, 3, 3, 4, 4, 4, 4]counter = Counter(my_list)print(counter) #..