삽입 정렬 (Insertion Sort)
·
알고리즘 (with JAVA)/기본 알고리즘
1. 개념 설명(1) 삽입 정렬은 인덱스 0번 위치 원소부터 시작하여 뒤 원소들과 비교하고 삽입할 위치를 지정한 후,  원소를 뒤로 옮기고 지정된 자리에 자료를 삽입하는 알고리즘이다. (2) 삽입 정렬은 선택 정렬과 유사하지만, 좀 더 효율적인 알고리즘이다. (3) 선택 정렬과 함께 인간에게 뭔가를 정렬하라고 하면 무의식적으로 사용하는 대표적인 알고리즘이다.    2. 과정 - 실제로 수행되는 과정이며, 삽입하는 동시에 정렬한다.     3. 코드1234567891011121314151617public class InsertSort {    public static void main(String[] args) {        int[] A = { 7, 2, 8, 10, 1 };               ..
거품 정렬 (Bubble Sort)
·
알고리즘 (with JAVA)/기본 알고리즘
1. 개념 설명 (1) 거품 정렬은 서로 인접한 두 원소의 대소를 비교하고 조건에 맞지 않다면 자리를 교환하며 정렬하는 알고리즘이다. 2. 과정 - 실제로 수행되는 과정이며, 배열 0 인덱스부터 순차적으로 비교한다. 3. 코드 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 public class BubbleSort { static BufferedReader sc = new BufferedReader(new InputStreamReader(System.in)); static StringBuilder sb = new StringBuilder(); public static void main(String[] args) throws IOException { int..
안정 정렬과 불안정 정렬
·
알고리즘 (with JAVA)/기본 알고리즘
1. 안정 정렬 vs 불안정 정렬- 안정 정렬은 반복되는 요소를 입력 때와 동일한 순서로 정렬시킨다. - 불안정 정렬은 안정 정렬 개념의 반대를 의미한다. - 예를 들면, 아래의 그림처럼 안정 정렬은 처음 시간 순으로 정렬하고 난 뒤 다시 지역으로 정렬한다면, 시간이 정렬된상태에서 정렬되지만 불안정은 그렇지 않다.    2. 안정 정렬에 대표적인 정렬들- 삽입, 병합, 버블, 계수 정렬이 있다.    3. 불안정 정렬에 대표적인 정렬들- 퀵, 선택 정렬이 있다.