순서를 가진 문자들의 집합"쌍다옴표를 통해 나타낼 수 있음"글자,단어,문장, 문서 등 문자로 구성된 자료형한 번 인스턴스가 생성되면 수정 불가능
완전 탐색은 모든 경우의 수를 시도 하여 문제해결의 가장 기본적인 방법이다.Brute:날것의 무식한 Force: 힘별도의 최적화 없이, 효율성을 고려하지 않는 풀이방법대표적인 예시로 4자리 숫자 암호를 찾으라고 하면 0000 ~ 9999 순차적으로 찾는 방식이다모든 경
구간합
정렬되어 있는 집합에서 원하는 값을 찾는 효율적인 탐색 방법
이분 탐색은 이진 탐색, Binary Search 라고도 한다. 순차적 탐색보다 빠른 탐색을 위해 나온 탐색 방법으로 실제로 이분 탐색의 시간복잡도가 순차적 탐색보다 낮다.
화살표 두 개의 의미를 부여해서 탐색 범위를 압축하는 방법!보통 left(l), right(r) 이나 start(s), end(d) 같은 식으로 포인트의 이름을 붙임위처럼 포인트 2개를 준비한다. 여기서는 start, end 라고 명칭하겠다. 찾는 값은 target이다
자기 자신을 호출하는 함수를 말한다.하나의 커다란 문제를 작은 문제로 나누어 해결이 가능하다계산 없이 바로 답을 구할 수 있는 경우재귀 호출을 멈추고 함수가 종료되는 조건적어도 하나 이상의 Base Case가 있어야 한다재귀 호출이 일어나는 경우문제를 작은 부분으로 쪼
복작한 문제를 작은 하위 문제로 나눠 해결하고, 그 결과를 조합하여 최종 해답을 얻는 알고리즘설계 기법을 말한다.작은 부분 문제들의 해를 미리 구해서 중복 계산을 방지한다큰 문제의 최적 해가 작은 문제의 최적 해를 포함같은 부분 문제가 여러 번 반복되어야 함계산한 결과
그리디 알고리즘은 현재 상황에서 지금 당장 좋은 것만 고르는 방법이다일반적인 그리디 알고리즘은 문제를 풀기 위한 최소한의 아이디어를 떠올릴 수 있는 능력을 요구한다그리디 해법은 정당성 분석이 중요하며 단순히 가장 좋아 보이는 것을 반복적으로 선택해도 최적에해를 구할 수