36. 삽입정렬

zzzzwso·2023년 9월 6일
0

문제설명

N개이 숫자가 입력되면 오름차순으로 정렬하여 출력하는 프로그램을 작성하세요.
정렬하는 방법은 삽입정렬입니다.

입력설명

첫 번째 줄에 자연수 N(1<=N<=100)이 주어집니다.
두 번째 줄에 N개의 자연수가 공백을 사이에 두고 입력됩니다. 각 자연수는 정수형 범위 안에 있습니다.

출력설명

오름차순으로 정렬된 수열을 출력합니다.

#include <iostream>
#include <vector>
using namespace std;

int main()
{
	int n, a[101],tmp,j;
	cin >> n;
	for (int i = 0; i < n; i++)
	{
		cin >> a[i];
	}
	for (int i = 1; i < n; i++)
	{
		tmp = a[i];
		for (j = i - 1; j >= 0; j--)
		{
			if (a[j] > tmp)
				a[j + 1] = a[j];
			else
				break;
		}
		a[j + 1] = tmp;
	}
	for (int i = 0; i < n; i++)
	{
		cout << a[i] << " ";
	}
}
profile
HI there

0개의 댓글