코딩/백준 문제 (브론즈)

[백준/2750/C언어] 수 정렬하기 _ 풀이

룻밤 2023. 9. 5. 21:51

https://www.acmicpc.net/problem/2750

 

2750번: 수 정렬하기

첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다.

www.acmicpc.net


풀이

선택 정렬 풀이

#include <stdio.h>
#include <stdlib.h>
int main() {
	int n, temp;
	scanf("%d", &n);
	int* m = (int*)malloc(n * sizeof(int));
	for (int i = 0; i < n; i++) scanf("%d", &m[i]);
	for (int i = 0; i < n; i++) {
		for (int j = i; j < n; j++) {
			if (m[i] > m[j]) {
				temp = m[i];
				m[i] = m[j];
				m[j] = temp;
			}
		}
	}
	for (int i = 0; i < n; i++) printf("%d\n", m[i]);
	free(m);
	return 0;
}

버블 정렬 풀이

#include <stdio.h>
#include <stdlib.h>
int main() {
	int n, temp;
	scanf("%d", &n);
	int* m = (int*)malloc(n * sizeof(int));
	for (int i = 0; i < n; i++) scanf("%d", &m[i]);
	
	for (int i = 0; i < n; i++) {
		for (int j = 0; j < n - i - 1; j++) {
			if (m[j] > m[j + 1]) {
				temp = m[j];
				m[j] = m[j+1];
				m[j + 1] = temp;
			}
		}
	}
    
	for (int i = 0; i < n; i++) printf("%d\n", m[i]);
	free(m);
	return 0;
}

선택 정렬

https://gmlwjd9405.github.io/2018/05/06/algorithm-selection-sort.html

 

[알고리즘] 선택 정렬(selection sort)이란 - Heee's Development Blog

Step by step goes a long way.

gmlwjd9405.github.io

버블 정렬

https://popbox.tistory.com/6

 

[ C언어 ] 버블 정렬 (Bubble Sort) 오름차순으로 정렬하는 소스코드 배워보기 -2

[C언어] 버블 정렬 (Bubble Sort) 사용하기 -오름차순- 편 버블 정렬 (Bubble Sort) 을 이용한 오름차순 구현 버블 정렬 이론 보러가기 : http://popbox.tistory.com/5 1. 1~20의 숫자를 담은 배열 만들기 , 출력하기

popbox.tistory.com