유클리드 호제법은 두 개의 수가 주어졌을 때, 최대공약수를 구하는 알고리즘 이다.일반적으로 두 수 사이의 공약수를 구할때 소인수 분해를 하고 소인수들의 곱으로 최대 공약수를 구할 수 있었다.하지만, 이것을 코드로 구현한다면 효율적이지 않을 것이다.만약 주어진 수의 크기
Integer.bitcount(int n) 메소드는 매겨변수로 들어가는 숫자 n을 binary(2진법)으로 변환 후, 1의 수를 반환해 준다. 이로인해 프로그래머스 레벨 2 다음 큰 수 찾기의 조건 중 이진법으로 변환했을때 1의 개수가 같은 수의 조건을 손쉽게 해결할
트리의 자식 노드가 4개인 트리를 뜻하고 있다.3D 데이터를 표현하기 위한 자료구조를 '장면 그래프( Scene Graph )'라고 부르는데, 이도 역시 그에 포함된다.쿼드 트리는 일반적으로 상하 개념이 없어서 3차원 세계를 4개의 평면으로 분할하지만,정의 : 공간을
백트래킹(backtracking)이란? : 해를 찾는 도중 해가 아니어서 막히면, 되돌아가서 다시 해를 찾아가는 기법을 말한다. 최적화 문제와 결정 문제를 푸는 방법이 된다.DFS와 백트래킹깊이 우선 탐색 (DFS)DFS는 가능한 모든 경로를 탐색한다. 따라서, 불필요
알고리즘 정렬 문제를 푸는 중 sort() 시간복잡도의 차이가 있다는 것을 알게되었다.보통 배열 정렬할 때 Arrays.sort() List,Set등 정렬을할 때 Collections.sort()를 사용한다.같은 sort 메서드지만 내부에서는 다른 정렬법을 사용한다.A