선택정렬 및 이진탐색의 시간복잡도 분석
- 최초 등록일
- 2006.12.17
- 최종 저작일
- 2006.09
- 10페이지/ 압축파일
- 가격 1,000원
소개글
선택정렬과 이진탐색을 구현하고, 시간복잡도를 테이블을 이용하여 분석한 후 Big-Oh notation으로 표현하여준 레포트 입니다.
소스 파일과 한글 파일이 함께 들어있습니다.
컴파일 실행환경
Visual C++ 6.0
본문내용
Ⅰ. 선택정렬 프로그램 작성
1. 선택정렬 알고리즘 개요.
(1) 선택정렬의 정의
선택정렬이라 함은 주어진 리스트의 데이터를 오르차순으로 정렬하는 경우 리스트의 첫 데이터를 시작으로 가장 작은 데이터를 탐색하여 리스트의 앞으로 이동시키면서 순차적으로 정렬해 나가는 데이터 정렬방식을 말한다.
(2) 선택정렬의 방식
선택정렬을 하기 위해서는 리스트의 첫 인덱스를 기준으로 최소값을 임의로 설정하여 주고, 지정된 데이터의 이후에 위치한 데이터 중에 더 작은 데이터가 있으면 교환해주는 방식으로 리스트를 처음부터 끝까지 순차적으로 탐색하면서 정렬 해야한다.
따라서 초기의 임의 데이터를 설정해주기 위한 변수 int min을 지정해주고 for문을 이용하여 탐색해 나가면서 최소값을 검색해준다. 이를 코드로 표현하면 아래와 같다.
min = i; // 정렬을 시작할 리스트 인덱스를 지정함.
for(j = i+1; j < n; j++) // 정렬할 인덱스 이후의 데이터 중 작은 값을 찾음.
{
if(list[j] < list[min]) // 현재 지정된 최소값보다 작은 데이터를 발견하면
min = j; // 그 인덱스를 다시 지정.
}
temp = list[i];
list[i] = list[min];
list[min] = temp; // 발견된 최소값의 데이터를 정렬할 인덱스로 이동.
압축파일 내 파일목록
자료구조선택정렬.hwp
result.jpg
resultbinarysearch.jpg
resultselectionsort.jpg
selectionsort.dsp
selectionsort.dsw
selectionsort.ncb
selectionsort.opt
selectionsort.plg
ssbs.cpp
자료구조선택정렬.h30
Debug/vc60.idb
Debug/vc60.pdb
Debug/selectionsort.exe
Debug/selectionsort.pdb
Debug/selectionsort.ilk
Debug/selectionsort.pch
Debug/ssbs.obj
참고 자료
없음