프로그래머스 소수찾기를 풀다가 에라토스테네스의 체 라는 알고리즘을 알게되었다.
에라토스테네스의 체 원리
void primeNumberSieve() {
// 1. 배열을 생성하여 초기화한다.
for(int i=2;i<=number;i++) {
a[i] = i;
}
// 2. 2부터 시작해서 특정 수의 배수에 해당하는 수를 모두 지운다.
// (지울 때 자기자신은 지우지 않고, 이미 지워진 수는 건너뛴다.)
for(int i=2;i<=number;i++) {
if(a[i]==0) continue; // 이미 지워진 수라면 건너뛰기
// 이미 지워진 숫자가 아니라면, 그 배수부터 출발하여, 가능한 모든 숫자 지우기
for(int j=2*i;j<=number; j+=i) {
a[j] = 0;
}
}
// 3. 2부터 시작하여 남아있는 수를 모두 출력한다.
for(int i=2;i<=number;i++) {
if(a[i]!=0) printf("%d ", a[i]);
}
}
Reference
여기
application.properties를 commit후에 ignore를 하고싶을 때
매번 구글링을 하게되서 블로그에 정리하려고 한다.
이미 commit이 되어있다면 위 사진처럼 .gitignore에 추가해주어도 없어지지 않는다.
따라서 아래 명령어래 캐시를 삭제해주어햐 한다.
git rm --cached D:/Git/Task/src/main/resources/application.properties
그 후 add, commit을 해주면 끝~
AUTO_INCREMENT
: 데이터베이스 키 값을 자동으로 증가시켜준다.
code coverage에 관한 링크이다.
여기