Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 티스토리챌린지
- DP
- 파이썬
- C언어
- javascript
- bfs
- softeer
- level 3
- Java
- LEVEL 2
- SQL
- Lv. 0
- 프로그래머스
- 깊이 우선 탐색
- Dynamic Programming
- join
- Python
- SQL 고득점 KIT
- group by
- Lv. 1
- programmers
- 자바스크립트
- 오블완
- 너비 우선 탐색
- select
- dfs
- Lv. 3
- Lv. 2
- 동적계획법
- 소프티어
Archives
- Today
- Total
몸과 마음이 건전한 SW 개발자
에라토스테네스의 체를 이용해서 소수인지 판별하기 본문
구현
const eratostenes = (number) => {
if (number <= 1) {
return false
}
for (let num = 2; num <= number ** 0.5; num++) {
if (number % num === 0) {
return false
}
}
return true
}
console.log(eratostenes(11)) // true
console.log(eratostenes(24971)) // true
console.log(eratostenes(249713)) // false
시간복잡도
- O(logN)
특징
- 제곱근을 한 숫자까지 탐색하여 소수를 판별
- 기존의 number 전체를 탐색하는 것이 아니기 때문에 시간복잡도가 O(N)에서 O(logN)으로 줄어든다.
'알고리즘 > 알고리즘 이론' 카테고리의 다른 글
프로그래머스 [Lv. 1] 최대공약수와 최소공배수 {언어 : Java} (0) | 2024.06.07 |
---|---|
이진수 변환 구현하기 {언어: 자바스크립트} (0) | 2024.05.04 |
최대공약수, 최소공배수, 유클리드 호제법 {언어: 자바스크립트} (0) | 2024.03.28 |
[알고리즘 이론] 거품 정렬, 거품 정렬 개선하기 (0) | 2024.02.29 |
순열, 조합 만들기 (0) | 2024.01.29 |