스택(STACK)의 정의 스택의 구조는 이렇게 생겼는데, 가장 늦게 들어간게 가장 먼저 나가는 방식이다.가장 늦게 들어간 자료가 가장 먼저 나가는 구조를 후입선출(LIFO, Last In First Out)이라고도 부른다.편하게 컵이라고 생각하면 된다. 컵과 같이, 스택도 한쪽 끝에서만 자료를 넣고 뺄 수 있다.스택의 가장 위를 top이라고 하고, 삽입과 삭제가 top에서 일어난다. 스택의 연산 push 스택에 새로운 원소를 삽입하는 연산pop 스택의 top 원소를 제거하고 반환empty스택이 비여있는지 검사 size 스택의 크기 참고자료 스택에 관한 자세한 내용은 https://visualgo.net/ko/list?slide=4위 링크에 들어가면 push와 pop을 직접 하고, push와 pop을 하는..
동적계획법 동적 계획법(Dynamic Programming, DP)은 큰 문제를 작은 문제로 나눠서 푸는 알고리즘이다. 동적 계획법(Dynamic Programming)은 이름만으로 무엇을 의미하는지 알 수 없기 때문에 오해가 많이 생기는데, 동적 계획법(Dynamic Programming)이라는 말을 처음 사용한 벨만은, Dynamic 이라는 단어가 멋있어서 선택했다고 한다. 1. 큰 문제를 작은 문제로 동적 계획법은 큰문제를 작은문제를 나눠서 푸는 기법이다. 그래서 동적 계획법의 핵심이 "큰문제를 작은문제를 나눠서 푼다." 이다. 이 방식은 분할 정복과 같은데 다만 분할 정복은 동적계획법과 달리 계산한 부분문제를 한번만 쓰고 더 이상 쓰지 않기 때문에 메모이제이션이 필요하지 않다. 분할 정복과 동적계..