- 선택 정렬
선택하여 정렬
반복문을 이용해서 작은 수를 찾고 그것을 순차적으로 앞에 두는 알고리즘
...등의 과정을 거침
void selectionSort(int arr[], int size) {
int minIndex;
int i, j;
for (i = 0; i < size - 1; i++) {
minIndex = i;
for (j = i + 1; j < size; j++)
if (arr[j] < arr[minIndex])
minIndex = j;
swap(&arr[i], &arr[minIndex]);
}
}
버블 정렬
버블 정렬은 현재 배열 요소와 그 다음 배열 요소를 비교한다음 조건에 걸리면 교환하는 식의 정렬
...등의 과정
코드 생략(너무 기본)
삽입 정렬
for while문을 사용
for i in range(1, len(num_list)):
while i>0 and num_list[i] < num_list[i-1]:
num_list[i], num_list[i-1] = num_list[i-1], num_list[i]
i-=1
while문은 조건을 충족할 때까지 반복된다.
따라서 num_list안의 하나의 값을 정해서 이것이 좌측의 숫자보다 커질 때까지 이동시킨다.
https://www.acmicpc.net/problem/2752
정렬 문제
풀이 1
num_list = list(map(int, input().split()))
for i in range(len(num_list)):
for j in range(i+1, len(num_list)):
if num_list[i] > num_list[j]:
num_list[i], num_list[j] = num_list[j], num_list[i]
for i in num_list:
print(i, end=' ')
풀이2
num_list = list(map(int, input().split()))
result = []
for i in range(3):
result.append(min(num_list))
num_list.remove(min(num_list))
for i in result:
print(i, end = ' ')
백준 2493 탑 python (0) | 2021.09.06 |
---|---|
백준 9935 문자열폭발 python (0) | 2021.09.02 |
Boj 1991 트리 순회 python (0) | 2021.07.29 |
Boj 15828 Router python (0) | 2021.07.23 |
Boj 큐2 python (0) | 2021.07.23 |
댓글 영역