Algorithm/Learn 2

배열과 정렬

배열과 정렬 A라는 배열과, A가 정렬된 B라는 배열은 순서는 서로 다르지만 집합적으로는 같은 집합이다 B의 첫 번째 원소는 A에서 가장 작은 원소, B의 두 번째 원소는 A에서 두 번째로 작은 원소... 선택정렬 A의 가장 작은 원소를 맨 앞 원소와 서로 자리를 바꾼다 맨 앞 원소를 제외한 범위에서 A의 가장 작은 원소를 맨 앞 원소와 서로 자리를 바꾼다 마지막 바로 앞까지 반복한다 (어차피 마지막은 의미 없기 때문) public void selectionSort(int[] data) { for (int i = 0; i < data.length - 1; i++) { // 주어진 범위에서 가장 작은 원소의 index int indexOfMin = getIndexOfMinInRange(data, i, da..

Algorithm/Learn 2022.04.28

알고리즘 팁 - 기본

기본 풀이 방법 경우의 수를 나눠서 생각한다 원소의 합 자료형의 범위를 벗어나지 않는지 확인한다 탐색 문제에서 항상 유의해야 할 부분 조건을 만족하는 원소가 없는 경우 조건을 만족하는 원소가 2개 이상인 경우(중복) 원소의 인덱스가 0부터 시작하는지 1부터 시작하는지 탐색 대상이 중복인 경우 흔히 등장하는 처리 기준 전부 출력 최대값 출력 최소값 출력 최초값 출력 마지막 값 출력 문제마다, 또는 내가 구현하는 알고리즘마다 달라질 수 있다 실수의 오차 방지 컴퓨터는 실수를 완벽하게 표현할 수 없다 모든 데이터의 합을 S 모든 데이터의 개수가 n이라고 하면, 평균은 S/n이라고 할 수 있다 평균을 계산할 때 양변에 n을 곱해주면 정수의 계산으로 바꿔서 계산할 수 있다 변형해서 계산할 때 자료형의 범위를 유의한다

Algorithm/Learn 2022.04.27