[알고리즘] 백준 2750번 문제_단순 정렬

2022. 2. 10. 03:23·알고리즘
반응형

단순 정렬 : https://www.acmicpc.net/problem/2750

================================== 풀이 ====================================

​

선택 정렬 : 가장 작은 값은 선택하여 앞으로 보내는 정렬

int main(void) {  //  2750번  선택 정렬 

	int tmp, num,min, index;
	int data[1000];

	scanf("%d", &num);

	for (int i = 0; i < num; i++) 
		scanf("%d", &data[i]);

	for (int i = 0; i < num; i++) {

		min = 1001;

		for (int j = i; j < num; j++) {
			if (min > data[j]) {
				
				min = data[j];
				index = j;
			}
		}

		tmp = data[i];
		data[i] = data[index];
		data[index] = tmp;
	}

	for (int i = 0; i < num; i++) {
		printf("%d\n", data[i]);
	}
}
​

​

버블 정렬 : 바로 옆에 위치한 값과 비교하여 작은 값을 앞으로 보내는 정렬

=> 제일 마지막에 위치한 값은 제일 큰 값이 된다.

 
int main(void) {  //  2750번  버블 정렬 

	int tmp, num;
	int data[1000];

	scanf("%d", &num);

	for (int i = 0; i < num; i++) 
		scanf("%d", &data[i]);

	for (int i = 0; i < num; i++) {
		for (int j = 0; j < num - i - 1; j++) {	
			if ( data[j] > data[j + 1]) {
				
				tmp = data[j];
				data[j] = data[j + 1];
				data[j + 1] = tmp;

			}
		}
	}

	for (int i = 0; i < num; i++) {
		printf("%d\n", data[i]);
	}
}

삽입 정렬 : 기본적으로 앞에 있는 값들은 모두 정렬되어 있다고 생각하고 정렬을 시작한다.

int main(void) {  //  2750번  삽입 정렬 

	int tmp, num;
	int data[1000];

	scanf("%d", &num);

	for (int i = 0; i < num; i++) 
		scanf("%d", &data[i]);

	for (int i = 0; i < num-1; i++) {
			for (int j = i; j >= 0 && data[j] > data[j + 1]; j--) {			
				tmp = data[j];
				data[j] = data[j + 1];
				data[j + 1] = tmp;
			}
	}

	for (int i = 0; i < num; i++) {
		printf("%d\n", data[i]);
	}
}

​

반응형
저작자표시 비영리 변경금지 (새창열림)

'알고리즘' 카테고리의 다른 글

[알고리즘] 백준 10989번 문제_수 정렬  (1) 2022.02.10
[알고리즘] 백준 1431번 문제_시리얼 번호  (2) 2022.02.10
[알고리즘] 백준 1181번 문제_단어 정렬  (1) 2022.02.10
[알고리즘] 백준 2751번 문제_1000만개 정렬  (0) 2022.02.10
[알고리즘] 백준 2752번 문제_세수 정렬  (0) 2022.02.10
'알고리즘' 카테고리의 다른 글
  • [알고리즘] 백준 1431번 문제_시리얼 번호
  • [알고리즘] 백준 1181번 문제_단어 정렬
  • [알고리즘] 백준 2751번 문제_1000만개 정렬
  • [알고리즘] 백준 2752번 문제_세수 정렬
잉여개발자
잉여개발자
풀스택 개발자를 목표로 잉여롭게 개발 공부도 하면서 다양한 취미 생활도 즐기고 있는 잉여 개발자입니다.
  • 잉여개발자
    잉여로운 개발일지
    잉여개발자
    • 분류 전체보기 (789)
      • 개발정보 (36)
      • 개발환경 (7)
      • 개발생활 (19)
      • React (141)
        • 이론 (23)
        • 기능 (12)
        • 실험실 (88)
        • 버그 (6)
        • 패스트캠퍼스 (9)
        • Npm (3)
      • React Native (28)
        • 공통 (6)
        • TypeScript (3)
        • JavaScript (18)
        • 버그 (1)
      • Next.js (30)
        • 이론 (13)
        • 실험실 (13)
        • 버그 (3)
      • Web (35)
      • 알고리즘 (202)
        • 풀이 힌트 (39)
      • JavaScript (47)
      • TypeScript (29)
        • 기초 (27)
        • 실험실 (2)
      • Node.js (13)
        • 이론 (0)
        • 기능 (3)
        • 실험실 (9)
        • 버그 (1)
      • 도커 (4)
      • CCNA (22)
        • 이론 (4)
        • 문제 (18)
      • 취미생활 (167)
        • 잉여로운 칵테일 (2)
        • 잉여의 식물키우기 (130)
        • 잉여로운 여행기 (11)
        • 잉여의 제2외국어 (21)
        • 잉여로운 책장 (2)
      • Java (1)
        • Java의 정석 (1)
      • 꿀팁 공유 (3)
  • 태그

    Node.js
    next.js
    Docker
    프로그래머스
    javascript
    react
    리액트
    redux
    식물
    타일러영어
    타입스크립트
    typescript
    자바스크립트
    네이버 부스트캠프
    Babel
    다이소
    바질
    CSS
    덤프
    바질 키우기
    webpack
    영어회화
    ReactNative
    리얼학습일기
    ChatGPT
    리얼클래스
    네트워크
    영어독학
    알고리즘
    CCNA
  • hELLO· Designed By정상우.v4.10.1
잉여개발자
[알고리즘] 백준 2750번 문제_단순 정렬
상단으로

티스토리툴바