반응형

Sequential Sort 8

[C언어 알고리즘] 2.2.2 순차 정렬 알고리즘 구현

[C언어 알고리즘] 2.2.2 순차 정렬 알고리즘 구현이번에는 순차 정렬 알고리즘을 구현해 보기로 해요. 순차 정렬(base:배열의 시작 주소, n: 원소 개수, compare:비교 논리) 반복(i:=0->n) 반복(j:=i+1->n) 조건(compare(base[i], base[j]) > 0) 교환(base[i],base[j]) 이번에는 순차 정렬 알고리즘을 구현하는 예를 보여드릴게요. //순차 정렬(Sequential Sort) #include 먼저 두 개의 정수 값을 교환하는 SWAP 매트로 함수를 작성합니다. #define SWAP(a,b) {int t; t = a; a=b; b=t;}//a와 b를 교환 이 책에서는 정수 형식 배열을 정렬하는 함수를 만들기로 할게요. 원소 형식에 관계없이 정렬하는..

[C언어 알고리즘] 2.2.1 순차 정렬 알고리즘 성능 분석

[C언어 알고리즘] 2.2.1 순차 정렬 알고리즘 성능 분석이번에는 순차 정렬 알고리즘의 타당성 및 수행 속도를 계산해 보기로 해요. 순차 정렬(base:배열의 시작 주소, n: 원소 개수, compare:비교 논리) 반복(i:=0->n) 반복(j:=i+1->n) 조건(compare(base[i], base[j]) > 0) 교환(base[i],base[j]) 순차 정렬의 내부 반복문은 j값이 i+1에서 n까지 변하죠. 그리고 i번째와 j번째 요소와 비교하여 i번째 원소가 크면 교환하기 때문에 i번째에서 j번째 원소 중에 제일 작은 값은 언제나 i번째에 존재합니다. 따라서 내부 반복문을 수행하면 i에서 마지막 원소 중에 제일 작은 값이 i번째에 배치함을 알 수 있어요. 외부 반복문은 i값이 0에서 n까지 ..

[C언어 알고리즘] 2.2 순차 정렬(Sequential Sort) 알고리즘

[C언어 알고리즘] 2.2 순차 정렬(Sequential Sort) 알고리즘이번에는 반복적인 방법으로 해결하는 순차 정렬(Sequential Sort) 알고리즘을 살펴볼게요. 정렬 알고리즘은 배열의 자료를 원하는 순으로 배치하는 알고리즘을 말해요. 정렬 알고리즘은 입력 인자로 정렬할 자료들이 있는 배열의 시작 주소와 원소 개수, 비교 알고리즘이 필요합니다. 그리고 수행 후에는 배열 내의 자료들은 원하는 순서로 배치한 상태여야 합니다. 순차 정렬은 맨 앞에서부터 제일 작은 원소를 배치하게 만들어 나가는 알고리즘이예요. 이를 위해 배치할 자리에 있는 원소를 뒤쪽에 있는 원소들과 비교하면서 작은 것을 발견하면 배치할 위치의 원소와 교환해요. 순차 정렬(base:배열의 시작 주소, n: 원소 개수, compar..

1.3 순차 정렬 알고리즘 소스

1.3 순차 정렬 알고리즘 소스다음은 테스트에 사용한 전체 코드입니다. //Book.h #pragma once #define MAX_TIT_LEN 200 #define MAX_AUT_LEN 20 typedef struct _Book Book; struct _Book { char title[MAX_TIT_LEN+1]; char author[MAX_AUT_LEN+1]; int num; }; Book *New_Book(const char *title,const char *author,int num); void Delete_Book(Book *book); void Book_View(Book *book); int Book_CompareTitle(Book *book,const char *title); int Boo..

1.2 순차 정렬 알고리즘 구현

1.2 순차 정렬 알고리즘 구현이번에는 순차 정렬 알고리즘을 구현해 보기로 해요. 순차 정렬(base:배열의 시작 주소, n: 원소 개수, compare:비교 논리) 반복(i:=0->n) 반복(j:=i+1->n) 조건(compare(base[i], base[j]) > 0) 교환(base[i],base[j]) 이번에는 순차 정렬 알고리즘을 구현하는 예를 보여드릴게요. 먼저 공통으로 사용할 파일을 프로젝트 폴더에 복사한 이후에 프로젝트에 추가하세요. 그리고 헤더 파일을 포함합니다. 이후의 작업에서는 언제나 필요하며 별다른 언급을 하지 않겠습니다. #include "Book.h" 여기에서 정의할 버블 정렬은 원소 형식에 관계없이 동적으로 생성한 개체의 집합을 정렬하게 정의할 것입니다. 이를 위해 void * ..

1. 순차 정렬(Sequential Sort) 알고리즘

1. 순차 정렬(Sequential Sort) 알고리즘이번에는 반복적인 방법으로 해결하는 순차 정렬(Sequential Sort) 알고리즘을 살펴볼게요. 정렬 알고리즘은 배열의 자료를 원하는 순으로 배치하는 알고리즘을 말해요. 정렬 알고리즘은 입력 인자로 정렬할 자료들이 있는 배열의 시작 주소와 원소 개수, 비교 알고리즘이 필요합니다. 그리고 수행 후에는 배열 내의 자료들은 원하는 순서로 배치한 상태여야 합니다. 순차 정렬은 맨 앞에서부터 제일 작은 원소를 배치하게 만들어 나가는 알고리즘이예요. 이를 위해 배치할 자리에 있는 원소를 뒤쪽에 있는 원소들과 비교하면서 작은 것을 발견하면 배치할 위치의 원소와 교환해요. 순차 정렬(base:배열의 시작 주소, n: 원소 개수, compare:비교 논리) 반복(..

[디딤돌 자료구조와 알고리즘 with C] 2.2 순차 정렬(Sequential Sort)

2.2 순차 정렬(Sequential Sort) 이번에는 반복적인 방법으로 해결하는 순차 정렬(Sequential Sort) 알고리즘을 살펴볼게요. 정렬 알고리즘은 배열의 자료를 원하는 순으로 배치하는 알고리즘을 말해요. 정렬 알고리즘은 입력 인자로 정렬할 자료들이 있는 배열의 시작 주소와 원소 개수, 비교 알고리즘이 필요합니다. 그리고 수행 후에는 배열 내의 자료들은 원하는 순서로 배치한 상태여야 합니다. 순차 정렬은 맨 앞에서부터 제일 작은 원소를 배치하게 만들어 나가는 알고리즘이예요. 이를 위해 배치할 자리에 있는 원소를 뒤쪽에 있는 원소들과 비교하면서 작은 것을 발견하면 배치할 위치의 원소와 교환해요.순차 정렬(base:배열의 시작 주소, n: 원소 개수, compare:비교 논리) 반복(i:=0..

2.1 순차 정렬(Sequential Sort) [디딤돌 자료구조와 알고리즘 with C++]

2.1 순차 정렬(Sequential Sort) 이번에는 반복적인 방법으로 해결하는 순차 정렬(Sequential Sort) 알고리즘을 살펴볼게요. 정렬 알고리즘은 배열의 자료를 원하는 순으로 배치하는 알고리즘을 말해요. 정렬 알고리즘은 입력 인자로 정렬할 자료들이 있는 배열의 시작 주소와 원소 개수, 비교 알고리즘이 필요합니다. 그리고 수행 후에는 배열 내의 자료들은 원하는 순서로 배치한 상태여야 합니다. 순차 정렬은 맨 앞에서부터 제일 작은 원소를 배치하게 만들어 나가는 알고리즘이예요. 이를 위해 배치할 자리에 있는 원소를 뒤쪽에 있는 원소들과 비교하면서 작은 것을 발견하면 배치할 위치의 원소와 교환해요. 순차 정렬(base:배열의 시작 주소, n: 원소 개수, compare:비교 논리) 반복(i:=..

반응형