알고리즘 알고리즘이란 무엇일까? 아래의 간단한 코드를 보자 > 위 코드는 3개의 정수 중에 하나를 임의의 최대값으로 정한 뒤,그보다 큰 정수가 나온다면 최대값을 바꿔준다. 즉, 알고리즘이란 문제를 해결하거나 혹은 해결하는 절차나 방법을 설명하는 과정으로, 컴퓨터를

이번 시간에는 탐색 중 많이 사용되는 이분탐색에 대해 포스트한다.그 전에 일반적으로 알고 있는 탐색 방법에는 선형탐색(linear search)이 있다.데이터의 처음부터 끝까지 탐색하는 방법인데, 이는 데이터의 갯수가 늘어남에 따라 탐색시간이 일정하게 늘어나는 단점이

이번 포스트에서는 정렬에 대해 간단히 소개해보고자 한다.이전 포스트(이진탐색)에서 언급했던 전제조건인 '정렬 완료된 데이터'를 만들기 위한데이터를 정렬하기 위한 방법 몇 가지를 정리한다.정렬되는 원소의 이동이 마치 수면 위로 올라오는 거품과 같은 모습에서 이름 붙여진

흔히 손 안의 카드 정렬이라고 하는 삽입정렬은 자료의 모든 요소를 앞에서부터 차례대로이미 정렬된 배열 부분과 비교하여, 자신의 위치를 찾아 삽입함으로써 정렬을 완성한다.아래의 그림은 5개의 데이터를 가진 배열을 삽입정렬을 이용하여 정렬을 완성하는 예제이다.데이터 갯수가
퀵 정렬 요약 ‘찰스 앤터니 리처드 호어(Charles Antony Richard Hoare)’가 개발한 정렬 불안정 정렬에 속하며, 다른 원소와의 비교만으로 정렬을 수행하는 비교 정렬 분할 정복 알고리즘의 하나로, 평균적으로 매우 빠른 수행 속도를 자랑하는 정렬 방법