스택이란 데이터들을 차곡차곡 쌓아 올린 형태의 자료구조가장 최근에 들어온 데이터가 가장 먼저나가는 후입선출(LIFO: Last In First Out)이다. 리스트의 Top에서 삽입과 삭제가 가능하다.웹 브라우저 뒤로가기, 실행 취소, 역순 문자열 만들기, 역폴란드
📝Hash의 정의 > 데이터를 다루는 기법 중 하나로 검색과 저장을 빠르게하는 자료구조이다. ❗ 관련 용어 1) 해시테이블 해시테이블은 hash를 주소로 삼아 데이터를 key와 value로 저장하는 연관 배열구조이다. 연관 배열은 자료구조의 하나로

각 노드가 데이터와 포인터를 가지고 한 줄로 연결되어 있는 방식으로 데이터를 저장하는 자료구조이다.<출처> programiz각 노드는 데이터와 포인터를 가지며 포인터 변수는 다음 노드의 데이터 주소 값과 자신의 주소 값을 가진다.연속된 노드의 연결체이다.노드란 연

먼저 집어 넣은 데이터가 먼저 나오는 선입선출 FIFO(First In First Out)구조로 저장하는 형식이다. 1) Enqueue : 큐 맨 뒤에 요소 추가2) Dequeue : 큐 맨 앞의 요소 삭제3) Peek : front에 위치한 데이터를 확인4) fro

연결되어있는 객체간의 관계를 표현한 자료구조이다.정점 (vertex) : 노드(node), 데이터가 저장되는 위치간선 (edge) : 링크(link), 정점 간의 관계, 노드를 연결하는 선인접 정점 (adjacent vertex) : 간선에 의해 직접 연결된 정점정점의
그래프의 일종으로 정점과 간선을 이용하여 데이터의 배치 형태를 추상화한 자료구조로 서로 다른 두 노드간의 연결이 하나뿐인 그래프이다.DAG(Directed Acyclic Graph), 방향성이 있는 비순환 그래프의 한 종류이다.일반적으로 대상 정보의 각 항목들을 계

완전 이진 트리의 일종으로 우선순위 큐를 위하여 만들어진 자료구조이다.완전 이진 트리 자료구조의 일종이다.여러 개의 값들 중에서 최댓값이나 최솟값을 빠르게 찾아낼 수 있다.데이터들이 우선순위를 가지고 있어 우선순위가 높은 데이터가 먼저 나간다.힙은 일종의 반정렬 상태
컴퓨터의 빠른 계산 능력을 이용하여 모든 경우의 수를 일일이 나열하면서 답을 찾는 방법을 의미한다. 직관적이어서 이해하기 쉽고 문제의 정확한 결과값을 얻어낼 수 있는 가장 확실하며 기초적인 방법이다.운이 좋다면 빠르게 답을 도출할 수 있지만, 운이 나쁘면 가장 마지막
현재 상황에서 가장 좋은 것(최선의 선택)을 고르는 알고리즘을 말합니다.동적 프로그래밍을 간단한 문제 해결에 사용하면 지나치게 많은 일을 한다는 것을 착안하여 고안했다.탐욕 알고리즘은 최적해를 구하는 데에 사용되는 근사적인 방법이다.최적해를 구할 수 있는 문제에 사용하
요소들이 마치 거품이 일어나듯 연쇄적으로 자기 자리를 찾아간다는 뜻, 매번 연속된 두 개 인덱스를 비교하여 정한 기준의 값을 뒤로 넘겨 정렬하는 방법이다.n번째 정렬 회차가 끝나면 뒤에서 n번째 자리의 데이터가 확정Big O (시간 복잡도) => Best Case:
하나의 pivot(축, 기준점)을 정해서 pivot보다 작은 값은 왼쪽에 큰값은 오른쪽에 위치시키면서 정렬하는 방법이다.분할 정복 기법 사용한다.퀵 정렬은 불안정 정렬에 속하며, 다른 원소와의 비교만으로 정렬을 수행하는 비교 정렬에 속한다.분할된 두 개의 작은 배열에
그래프에서 깊은 부분을 우선적으로 탐색하는 알고리즘으로 루트 노드나 다른 임의의 노드에서 시작해서 다음 분기(branch)로 넘어가기 전에 해당 분기를 완벽하게 탐색하는 방법이다.모든 노드를 확인하고자 할 때 사용한다.검색 속도는 너비 우선 탐색에 비해 느리다.자기 자

여러 알고리즘의 기본이 되는 해결방법으로, 기본적으로는 엄청나게 크고 방대한 문제를 조금씩 나눠가면서 용이하게 풀 수 있는 문제 단위로 나눈 다음 그것들을 다시 합쳐서 해결하는 방식이다.재귀적으로 자신을 호출하면서 그 연산의 단위를 조금씩 줄여가는 방식이다.분할된 문제
하나의 함수에서 자기 자신을 다시 호출하여 작업을 수행하는 알고리즘이다.스택처럼 호출한 함수를 쌓았다가 종료 조건을 만나면 위에서부터 하나씩 꺼내 처리하는 방식이다.함수 호출을 중지하는 조건이 있어야 한다.적용 예시) 1부터 n까지의 합 / !팩토리얼 / 최대공약수 문
특정 범위까지의 값을 구하기 위해서 그것과 다른 범위까지의 값을 이용하여 효율적으로 값을 구하는 알고리즘 기법이다.최적 부분 구조 문제에 효과적이다.✔ 최적 부분 구조란 문제의 최적 해결 방법이 부분 문제에 대한 최적 해결 방법으로 구성된 구조를 의미한다.동일한 문제