수 정렬하기
https://www.acmicpc.net/problem/2750
힌트에
시간 복잡도가 O(n²)인 정렬 알고리즘으로 풀 수 있습니다. 예를 들면 삽입 정렬, 거품 정렬 등이 있습니다.
라고 적혀있어서 내가 알고있는 선택정렬으로 코드를 작성했다.
선택정렬 방법은 아래와 같다.
1
2
3
4
5
6
7
8
9
10
11
12
|
N = int(input())
numbers = []
for _ in range(N):
numbers.append(int(input()))
print(numbers)
for i in range(N):
for j in range(i+1, N):
if numbers[i] > numbers[j]:
change = numbers[i]
numbers[i] = numbers[j]
numbers[j] = change
print(numbers)
|
cs |
앞의 수가 뒤의 수보다 작을 경우만 바꿔주면 된다.
'알고리즘' 카테고리의 다른 글
(파이썬) 백준 알고리즘 - 10989번 (0) | 2021.08.25 |
---|---|
백준 알고리즘(파이썬) - 2751번 (0) | 2021.08.25 |
백준 알고리즘(파이썬) - 1436번 / in, not in(포함연산자) (0) | 2021.08.24 |
백준 알고리즘(파이썬) - 1018번 (0) | 2021.08.24 |
백준 알고리즘(파이썬) - 7568번 (0) | 2021.08.23 |