티스토리 뷰
알고리즘이란?
수학과 컴퓨터과학, 언어학 또는 엮인 분야에서 어떠한 문제를 풀어맺기 위해 정해진 일련의 절차나 방법을 공식화한 형태로 표현한 것, 계산을 실행하기 위한 단계적 절차
알고리즘의 종류
1. 재귀 알고리즘
- 어떤 함수에서 자신을 다시 호출하여 작업을 수행하는 방식의 알고리즘
2. 정렬 알고리즘
- 원소들을 번호순이나 사전 순서와 같이 일정한 순서대로 열거하는 알고리즘
3. 탐색 알고리즘
- 선형 탐색
- 맨 앞이나, 맨 뒤에서부터 순차적으로 찾아보는 알고리즘
- 이진 탐색
- 중간지점을 기준으로 데이터를 반씩 나눠서 탐색하는 알고리즘
- 해시 탐색
- 데이터의 내용과 저장한 곳의 index를 미리 연결해서 빠르게 찾는 알고리즘
4. 그래프 알고리즘
- 그래프 이론과 관련된 문제를 푸는 알고리즘
5. 문자열 검색 알고리즘
- 문자열을 이용하여 어떤 패턴을 찾거나 주어진 문자열들의 공투부분등을 찾는 알고리즘
알고리즘 설계기법
1. 탐욕 알고리즘
- 최적해를 구할 때, 여러 경우 중 그 순간에 최적이라고 생각되는 것은 선택해 나가는 방법
2. 분할정복
- 그대로 해결할 수 없는 문제를 작은 문제로 분할하여 문제를 해결하는 방법
3. 동적계획법
- 주어진 문제를 여러개의 하위 문제로 나누어 해결하고 그것들을 결합하여 최종적인 목적에 도달하는 것.(하위 문제를 푼것은 저장하여 같은 하위 문제를 만났을 때 계산시간을 줄여준다.)
4. 백트래킹
- 해를 찾는 도중 해가 아니라면, 되돌아가서 다시 해를 찾아가는 방법
내가 알고 있는 것
내가 부족한 것
내가 배워야할 것
References
https://ko.wikipedia.org/wiki/%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98
http://dawoonjeong.com/algorithm-categories/#%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98algorithm%EC%9D%98-%EC%A2%85%EB%A5%98-%EB%B6%84%EB%A5%98
댓글