정렬비교 리포트(버블,선택,삽입,퀵,합병)
- 최초 등록일
- 2016.06.02
- 최종 저작일
- 2015.06
- 17페이지/ MS 워드
- 가격 4,000원
소개글
버블정렬,퀵정렬,삽입정렬,합병정렬,선택정렬의 정렬의 비교횟수를 비교하여 가장 효율적인 알고리즘 선택
표,그래프,실행화면, 코드, 분석내용 다 첨부되어있음. 총 17페이지
목차
Ⅰ. Chapter 1. 과제정의
1-1. 과제의 간략한 설명
1-2. 사용 알고리즘
(1) 버블정렬(Bubble Sort)
(2) 선택정렬(Selection Sort)
(3) 삽입정렬(Insertion Sort)
(4) 퀵정렬(Quick Sort)
(5) 합병정렬(Merge Sort10
Ⅱ. Chapter 2. 분석
2-1. 출력화면
2-2. 결과정리
(1)표
(2)그래프
Ⅲ. Chapter 3. 결론
Ⅳ. Chapter 4. 참고
본문내용
Chapter 1. 과제정의
1-1. 과제의 간략한 설명
난수를 생성하여 버블정렬(bubble sort), 선택정렬(selection sort), 삽입정렬(insertion sort), 퀵정렬(quick sort), 합병정렬(merge sort) 이 5개의 정렬 알고리즘을 이용하여 각각의 알고리즘으로 난수를 정렬할 경우의 비교횟수를 구하고, 그 비교횟수를 바탕으로 각 알고리즘을 분석 및 비교하여 효율적인 알고리즘을 선택한다.
1-2. 사용 알고리즘1)
(1) 버블정렬(Bubble Sort)
인접한 레코드가 순서대로 되어 있지 않으면 2개의 레코드를 비교하여 자료를 교환하고 전체가 정렬이 완료될 때까지 비교/교환의 연산을 계속 수행하는 알고리즘으로 오름차순 정렬은 값을 비교하여 큰 값을 오른쪽으로 보내고 내림차순 정렬은 값을 비교하여 작은 값을 오른쪽으로 보내는 방식이다..
BubbleSort(A, n)
for i←n-1 to 1 do
for j←0 to i-1 do
j와 j+1번째의 요소가 크기순이 아니면 교환
j++;
i--;
(2) 선택정렬(Selection Sort)
정렬이 안된 숫자들 중에서 최소값을 찾아서 배열의 첫 번째 위치에 있는 값과 교환하고 두 번째 작은 값을 찾아 두 번째 위치에 있는 값과 교환하는 방법이 반복되는 알고리즘이다.
selection_sort(A, n)
for i←0 to n-2 do //인덱스 1부터 시작
least ← A[i], A[i+1],..., A[n-1] 중에서 가장 작은 값의 인덱스;
A[i]와 A[least]의 교환;
i++;
(3) 삽입정렬(Insertion Sort)
첫 번째 값을 정렬이 완료된 상태로 가정하고 나머지 레코드 값들을 정렬한다. 두 번째 기준으로 첫 번째 자료와, 세 번째 기준으로 이미 정렬이 완료된 첫 번째, 두 번째 레코드와 비교하여 위치를 찾아 삽입하는 방식은 n-1번 반복한다.
참고 자료
C언어로 쉽게 풀어쓴 자료구조 <생능출판. 천인국 외2인 지음