
알고리즘 선택의 기준이 됨파이썬 프로그램에서는 2,000만번~1억 번의 연산을 1초의 수행시간으로 예측빅-오메가최선일 때(best case)의 연산 횟수를 나타낸 표기법빅-세타보통일 때(average case)의 연산 횟수를 나타낸 표기법빅-오최악일때(worst cas

배열과 리스트는 자료구조 영역에서 데이터를 담을 때 사용하는 가장 기본적인 자료구조임파이썬에서는 리스트가 배열의 특성도 가지고 있어서 크게 구분하지는 않지만 특징과 동작 원리는 이해하고 있어야 함메모리의 연속된 공간에 값이 채워져 있는 형태의 자료구조인덱스를 통해 배열

리스트에 순차적으로 접근해야 할 때 두 개의 점의 위치를 기록하면서 처리하는 알고리즘(시작점과 끝 점 2개의 점으로 접근할 데이터의 범위를 표현)시작점과 끝점이 첫 번째 원소의 인덱스(0)을 가리키도록 함현재 부분의 합이 m과 같다면, 카운트현재 부분 합이 M보다 작으

기본 개념은 투 포인터에서 시작시작과 끝 포인터로 범위를 지정하고, 범위(window)를 유지한 채로 이동(sliding)범위를 한 칸 옮기면 (w-1) 칸은 겹침범위를 옮길 때마자 w개를 전부 더하지 말고, 이전의 결과를 써먹는 방향으로 접근

리스트에서 좀 더 발전한 형태의 자료구조스택과 큐는 구조는 비슷하지만 처리 방식이 다름삽입/삭제 연산이 후입선출(LIFO)로 이뤄지는 자료구조깊이 우선 탐색(DFS), 백트래킹 종류의 코딩 테스트에 효과적임후입선출 개념 자체가 재귀 함수 알고리즘 원리와 일맥상통함top

정렬 알고리즘 중 가장 기초인 버블 정렬에 대해 정리해보자

이미 정렬된 데이터 범위에 정렬되지 않은 데이터를 적절한 위치애 삽입시켜 정렬하는 방식인 삽입정렬에 대해서 알아보자

최솟값 혹은 최댓값을 찾아 정렬시키는 선택정렬에 대해서 알아보자

기준값(pivot)을 선정해 해당 값보다 작은 데이터와 큰 데이터로 분류하는 것을 반복해 정렬하는 알고리즘, 퀵 정렬에 대해서 알아보자

데이터가 정렬돼 있는 상태에서 원하는 값을 찾아내는 알고리즘이다.대상 데이터의 중앙값과 찾고자 하는 값을 비교해 데이터의 크기를 절반씩 줄이면서 대상을 찾는다.O(logN)ex) 16개의 데이터면 최대 4번의 연산으로 원하는 데이터를 찾을 수 있다.현재 데이터셋의 중앙
현재 상태에서 보는 선택지 중 최선의 선택지가 전체 선택지 중 최선의 선택지라고 가정하는 알고리즘이다.\-> 전체를 봤을 때 항상 최적의 해를 보장하진 않는다.해 선택: 현재 상태에서 가장 최선이라고 생각하는 해를 선택한다.적절성 검사 : 현재 선택한 해가 전체 문제의

두 수의 최대공약수를 구하는 알고리즘