[TIL] 99클럽 코테 스터디 23일차 TIL + 오늘의 학습 키워드
·
TIL
* 오늘의 학습 키워드 : 이분탐색(Binary Search) - 정렬된 배열이나 리스트에서 특정 값을 찾을 때 사용하는 알고리즘, 반으로 나누는 전략을 사용하여 검색 범위를 좁혀나간다.핵심 개념시작 인덱스와 끝 인덱스를 설정하고 중간 인덱스를 계산합니다. 중간 인덱스의 값과 결과값을 비교합니다.일치 : 인덱스를 반환작다 : 중간 인덱스 값이 결과값보다 작으면, 오른쪽 절반에 있으므로 low = mid + 1로 설정크다 : 중간 인덱스 값이 결과값보다 크면, 왼쪽 절반에 있으므로 high = mid - 1로 설정Lower Bound 접근법 : 특정 값 이상이 처음 나타나는 위치를 찾는 이분 탐색Upper Bound 접근법 : 특정 값보다 큰 값이 나타나는 위치를 찾는 이분 탐색* leetcode 10..
[TIL] 99클럽 코테 스터디 21일차 TIL + 오늘의 학습 키워드
·
TIL
* 오늘의 학습 키워드 : 동적 계획법(Dynamic Programming, DP) - 복잡한 문제를 간단한 하위 문제로 분할하고, 그 하위 문제들을 각각 풀어서 전체 문제의 해답을 구하는 알고리즘핵심 개념메모이제이션(Memoization) : 이미 계산한 하위 문제의 결과를 메모리에 저장하여 동일한 하위 문제가 다시 계산될 때 저장된 값을 재사용.탑다운(Top - Dwon) 접근법 : 문제를 상위 문제에서 하위 문제로 재귀적으로 분할하면서 푸는 방식.바텀업(Bottom - Up) 접근법 : 문제를 하위 문제부터 풀어나가면서 점진적으로 상위 문제의 해를 구하는 방식, 일반적으로 반복문을 사용하며, 결과를 저장하기 위해 테이블(배열)을 사용함.* 예제 문제 : 피보나치 수열 - 재귀적 접근법 : 동일한 ..