● 개념
쉽게 말해 문제해결 순서이고, 자료구조를 구현한 방법론
● 알고리즘의 특성
입력 : 자료가 외부에서 제공될 수 있다.
출력 : 문제가 처리되면 반드시 하나 이상의 결괏값이 나와야 한다.
명확성 : 알고리즘의 각 단계는 무엇을 하기위한 것인지 명확하게 정의되어야 한다.
유한성 : 알고리즘의 명령어대로 수행했을때 주어진 값이 처리된 후 종료되어야 한다.
효과성 : 알고리즘은 효율적일수록 가치가 높다. 시간적, 공간적 효율성을 가져야 한다.
● 알고리즘 종류
- 정렬 알고리즘
- 버블정렬 (bubble sort)
- 선택정렬 (Selection sort)
- 삽입정렬 (Insertion Sort)
- 병합정렬 (Merge Sort)
- 힙정렬 (Heap Sort)
- 퀵정렬 (Quick Sort)
알고리즘이란?
문제해결의 절자적 과정
자료구조란?
알고리즘을 푸는 과정에서 데이터를 담아놓는 공간 /구조
이는 알고리즘을 만드는데 큰 영향을 준다.
※ 시간복잡도 / 공간복잡도

빅오 표기법
- O(n) O(n2)
ex) for문의 갯수에 따라 n을 곱해서 구하는 상대적 복잡도