[자료(data)구조] 정렬알고리즘 비교 분석
페이지 정보
작성일 23-02-19 00:25
본문
Download : [자료구조] 정렬알고리즘 비교 분석.hwp
ArrayVector *insert;
ArrayVector *merge;
각각의 sort를 구현하는데 있어서 강의노트와 여러 자료(資料)들을 참고하였습니다. 저는 반대로
선정했는지 기술할 것.
private:
.....
Download : [자료구조] 정렬알고리즘 비교 분석.hwp( 58 )
ArrayVector *DS1, *DS2, *DS3;
선정했는지 기술할 것.
정렬알고리즘,알고리즘
Step 1. 5.1.3절의 Extendable ArrayVector를 구현하고 반드시 이를 바탕으로 아래 정렬
Bubblesort(bubble);
DS1= new ArrayVector[DATASETNUM];
원칙으로 하며 보고서에 차이점을 기술할 것. 특히, Quick Sort인 경우 어떻게 pivot을
[자료(data)구조] 정렬알고리즘 비교 분석
설명
....
public:
#define DATASETNUM 100000를 선언하여 이 값만 바꿔주면 생성되는 데이터의 개수를 조절할 수 있도록 하였습니다. class data에는 int key, char elem을 선언하여 key값과 문자를 저장할 수 있도록 하여 구현하였습니다. 이를 방지하기위해 동적할당을 하여 힙에 데이터를 저장하도록 하였습니다.
먼저 메인에서 아래와같이 data타입 ArrayVector를 포인터로 선언하고 동적할당을 하였습니다.
ArrayVector *select;
레포트 > 공학,기술계열
} //이제 e와 bubble는 각각 별개
① Bubble sort
element = elem;
class data{
void checktime(ArrayVector *e) 함수에서도 마찬가지로 data타입의 포인터변수e를 매개변수로 받아서 이를 사용합니다. 이는 데이터의 개수(크기)가 커지면 이를 처리할 공간(스택)이 부족하게 되어 스택 오버플로우가 발생하게 됩니다.
ArrayVector *bubble;
각각의 배열에 e의 값을 넣어주어야 하는데 대입연산자 오버로딩을 하지 못해 아래와 같이 풀어썻습니다.
전체 코드는 맨 마지막에 추가하기로 하겠습니다.
.....
key = k;
data(int k, char elem){
...
강의노트에는 ascending 으로 data를 정렬하게 됩니다. };
5.1.3절의 Extendable ArrayVector를 구현하고 반드시 이를 바탕으로 아래 정렬
data(){};
char element;
에서 Object를
for (i=0; isize(); i++){
template
5.1.3절의 Extendable ArrayVector를 구현하고 반드시 이를 바탕으로 아래 정렬 알고리즘들을 구현할 것. 강의노트에 제시된 알고리즘을 변경하여 작성하는 것을 원칙으로 하며 보고서에 차이점을 기술할 것. 특히, Quick Sort인 경우 어떻게 pivot을 선정했는지 기술할 것.
delete []bubble;
bubble->insertAtRank(i, e->elemAtRank(i));
순서
bubble = new ArrayVector[e->size()];
int key;
class ArrayVector{
알고리즘들을 구현할 것. 강의노트에 제시된 알고리즘을 변경하여 작성하는 것을
ArrayVector *quick ;
원칙으로 하며 보고서에 차이점을 기술할 것. 특히, Quick Sort인 경우 어떻게 pivot을
알고리즘들을 구현할 것. 강의노트에 제시된 알고리즘을 변경하여 작성하는 것을
위와같이 클래스 data를 선언하여 Object에 data를 사용하였습니다.
다. 이 함수에서 아래의 변수들을 선언하였는데 이는 하나의 데이터로부터 여러개의 변수에 동일한 data을 넣어주기 위해서입니다.


