정렬이란?
: 물건을 크기순으로 오름차순이나 내림차순으로 나열하는 것
선택정렬(selection sort)
: 정렬이 안 된 숫자들 중에서 최솟값을 선택하여 배열의 첫 번째 요소와 교환
//선택정렬
#include <stdio.h>
#define SIZE 10
int main(void) {
int list[SIZE] = { 0, 3, 4, 1, 9, 8, 2, 5, 6, 7 };
int i, j, temp, least;
for (i = 0; i < SIZE - 1; i++) {
least = i; //최솟값 = i
for (j = i + 1; j < SIZE; j++) //i뒷부분부터 i와 비교함
if (list[j] < list[least]) //i보다 작으면 least = j
least = j;
temp = list[i]; //list[i]와 list[least]를 서로 교환함
list[i] = list[least];
list[least] = temp;
}
for (i = 0; i < SIZE; i++)
printf("%d ", list[i]);
printf("\n");
return 0;
}
순차탐색
: 배열의 원소를 순서대로 하나씩 꺼내서 탐색키와 비교하여 원하는 값을 찾아가는 방법
//순차탐색
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#define SIZE 10
int main(void) {
int i;
int x; //탐색할 값
int arr[SIZE] = { 1, 2, 3, 5, 8, 9, 6, 7, 0, 4 };
printf("탐색할 값을 입력하시오: ");
scanf("%d", &x);
for (i = 0; i < SIZE; i++) {
if (arr[i] == x) {
printf("탐색 성공 인덱스 = %d\n", i);
printf("탐색 종료\n");
}
}
return 0;
}
'Programming > 컴퓨터프로그래밍및실습' 카테고리의 다른 글
[컴프실] 제12장: 문자와 문자열 (0) | 2023.08.27 |
---|---|
[컴프실] 제11장: 포인터 (0) | 2023.08.11 |
[컴프실] 9~12일차 실습문제 (0) | 2023.07.20 |
[컴프실] 제10장: 배열 (0) | 2023.07.19 |
[컴프실] 제9장: 함수와 변수 (0) | 2023.07.17 |