알고리즘 설계실습 '퀵정렬과 합병정렬 성능 비교 및 퀵정렬의 임계값을 변화시키며 성능 측정을 한 소스코드 및 코드 설명서' 리포트
- 최초 등록일
- 2022.11.15
- 최종 저작일
- 2021.06
- 5페이지/ 압축파일
- 가격 3,000원
* 본 문서(hwp)가 작성된 한글 프로그램 버전보다 낮은 한글 프로그램에서 열람할 경우 문서가 올바르게 표시되지 않을 수 있습니다.
이 경우에는 최신패치가 되어 있는 2010 이상 버전이나 한글뷰어에서 확인해 주시기 바랍니다.
소개글
알고리즘 설계실습 수업시간에 제출한 과제(리포트)입니다.
교수님께서 내주신 문제에 대해 프로그램을 작성하였고, 작성한 프로그램에 대한 설명을 적었습니다.
목차
1. 프로그램 개요
2. 프로그램 구조
3. 프로그램 설계
4. 프로그램 실행결과
5. 결과분석
본문내용
●프로그램 개요
퀵정렬과 합병정렬의 성능을 데이터 수 n을 변화시키면서 측정하여 비교 분석할 수 있게 구현하였고, n개의 데이터에 대하여, 퀵정렬의 임계값을 변화시키면서 성능을 측정하여 그 결과를 분석할 수 있도록 구현하였습니다.
●프로그램 구조
1. 퀵정렬과 합병정렬의 성능을 비교하는 코드는 퀵정렬과 합병정렬을 구현한 다음, 두 정렬 방법을 실행할 때 시간을 측정하여 두 정렬 방법의 실행시간을 비교할 수 있게 했습니다.
2. 퀵정렬의 임계값을 변화시키면서 성능을 측정하는 코드는 퀵정렬과 삽입정렬을 구현하여 임계값 이하의 데이터는 삽입 정렬을 사용하고, 임계값 초과의 데이터는 퀵정렬을 사용하도록 하였고, n개의 데이터와 임계값을 입력받아 실행시간을 측정하도록 하였습니다.
●프로그램 설계
1. 퀵정렬을 수행할 때 원소끼리 교환할 일이 있기 때문에 swap 함수를 구현하였습니다.
그리고 퀵정렬을 구현하는 quicksort_DC 함수를 구현했는데, 피벗을 중심으로 분할한 후 좌우 그룹을 대상으로 다시 퀵정렬을 수행하는 것을 순환 호출하며 반복합니다.
참고 자료
없음
압축파일 내 파일목록
2nd report 코드 설명서.hwp
2nd report 소스코드.hwp