선입후출 형식컵에 원소를 한줄로 채워넣는 것으로 이해하면 쉽다. 선입선출 형식 입구와 출구가 뚫려있는 원통으로 이해하면 쉽다. 자기 자신을 다시 호출하는 함수 종료 조건을 반드시 명시해야 함 모든 재귀함수는 반복문을 이용해 동일한 기능을 구현할 수 있음 함수를 연속
정렬 데이터를 특정한 기준에 따라 순서대로 나열하는 것 정렬 알고리즘은 공식처럼 사용되기도 함 선택 정렬 : 처리되지 않은 데이터 중 가장 작은 데이터를 선택 -> 맨 앞에 있는 데이터와 바꾸는 것을 반복 > 실행결과 : [0,1,2,3,4,5,6,7,8,9] 시
순차탐색이진탐색 : 정렬되어 있는 리스트에서 탐색범위를 절반씩 좁혀가며 탐색연산 횟수 : $log_2N$에 비례 -> 시간 복잡도는 $O(logN)$을 보장bisect_left(a,x) : 정렬된 순서를 유지하면서 배열 a에 x를 삽입할 가장 왼쪽 인덱스를 반환bise
: 이미 계산된 결과는 별도의 메모리 영역에 저장하여 다시 계산하지 않도록 하는 방법. 시간 효율성을 비약적으로 향상시킨다. 자료구조에서 dynamic 이란?: 프로그램이 실행되는 도중에 실행에 필요한 메모리를 할당하는 기법(그러나 여기서는 별다른 의미 없이 사용됨)
다익스트라 알고리즘 : 특정 노드에서 출발하여 다른 모든 노드로 가능 최단 경로를 계산한다. 노드 간 간선이 음의 값을 가지지 않아야 함 그리디 알고리즘 : 매 상황에서 가장 비용이 적은 노드를 선택함 동작 과정 출발 노드 설정 최단 거리 테이블 초기화 (Inf
서로소 집합 : 공통 원소가 없는 두 집합 서로소 집합 자료구조 (Union-Find)트리 구조를 사용하여 같거나 다른 집합으로 분리해주거나 최대 N개의 집합으로 분리할 수도 있다. 합집합 (Union) : 두 개의 원소가 포함된 집합을 하나의 집합으로 합치는 연산찾기