빅오 표기법이란 무엇일까?
배열이나 문자열에서 이중 반복문 사용 줄이기
멀티 포인터 패턴은 정렬된 배열에서 한 쌍을 검색하는 데에 효과적인 패턴이다.
divide and conquer 알고리즘은 규모가 큰 배열이나 문자열에 유용한 패턴으로, 큰 데이터셋을 다루기 쉬운 작은 데이터셋으로 나누어 최종적인 답을 구하는 패턴이다.
재귀란, 자기 자신을 호출하는 것을 뜻한다. 그 중에서도 자기 자신을 호출하는 함수를 의미한다.
이전 글에 작성된 재귀 함수는 단일 단독 함수(Single standalone function)이었다. 함수 내에서 자신을 직접 호출하는 방식이었다.그러나 Helper Method Recursion는 두 개의 함수가 있다. 재귀적이지 않은 외부 함수가 재귀 함수인 내부
슬라이딩 윈도우 패턴은 배열 등의 항목을 순차적으로 검사하면서 고정된 크기의 하위 집합의 값을 구할 때 유용한 패턴이다.
서칭 알고리즘은 데이터 내에서 조건을 만족하는 값을 찾을 때 사용되는 알고리즘 패턴이다.
정렬 알고리즘은 배열과 같은 컬렉션 내의 항목을 재배열하는 과정을 말한다.
선택 정렬은 버블 정렬과 유사하지만, 배열을 순회하면서 가장 작은 값을 찾고 그 값의 위치를 교환하면서 정렬하는 방식이다.
삽입 정렬은 버블 정렬, 선택 정렬과 유사한 정렬 알고리즘 패턴이다. 삽입 정렬은 배열을 순회하면서 이미 정렬된 부분과 비교하여 올바른 위치에 삽입하면서 정렬하는 패턴이다.
병합 정렬은 큰 배열을 더 작은 하위 배열로 나누어 정렬하는 `분할 정복(Divide and Conquer)` 패턴을 사용한 정렬 방법이다.
퀵 정렬은 배열 내에서 무작위로 숫자를 하나 선택하고 그걸 기준(피벗)으로 잡는다. 그리고 나머지 숫자들을 비교하여 피벗보다 큰 숫자는 피벗의 오른쪽으로, 작은 숫자들은 피벗의 왼쪽으로 이동시킨다.