일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
Tags
- localhost
- 클론
- import data
- error 해결
- 에러
- Python
- visualstudio code
- MySQL
- 단축키
- console창
- 오류
- Visual Studio Code
- 깃 토큰
- cmd
- github clone
- 데이터베이스
- error
- 파이썬
- 따옴표 삭제
- run sql script
- php
- DataGrip
- jupyter
- OrCAD 다운로드
- database
- PHPStorm
- github token
- clone
- csv
- vscode
Archives
- Today
- Total
개발 노트
3. 버블 정렬(Bubble Sort) 본문
ㆍ가장 효율성이 떨어지는 알고리즘.
ㆍ당장 옆에 있는 것과 비교해서 둘끼리만 이동.
ㆍ 수행 시간 : n x (n+1) / 2
ㆍ선택정렬처럼 시간복잡도는 O(N^2)으로 동일하지만, 자리를 바꾸는 연산이 계속 이루어지기 때문에 선택정렬보다도 훨씬 느리다. 정렬 알고리즘중에 가장 느리다.
#include <stdio.h>
int main(void) {
int i, j, temp;
int array[10] = { 1, 10, 5, 8, 7, 6, 4, 3, 2, 9 };
for (i = 0; i < 10; i++) { //i를 10번
for (j = 0; j < 9 - i; j++) { //j를 9번(집합의 크기가 하나씩 감소되기 때문
// j 위치 > j다음 위치 라면 서로 위치 바꿔줌
if (array[j] > array[j + 1]) {
temp = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
}
}
}
for (i = 0; i < 10; i++) {
printf("%d ", array[i]);
}
return 0;
}
출력 결과
반응형
'알고리즘 공부 : 24.01.18~ > 1. 알고리즘 기초 정렬' 카테고리의 다른 글
5. 퀵 정렬(Quick Sort) 6.퀵 정렬(Quick Sort)의 구현 및 한계점 분석 (4) | 2024.01.30 |
---|---|
4. 삽입 정렬(Insertion Sort) (0) | 2024.01.24 |
2. 선택 정렬(Selection Sort) (2) | 2024.01.24 |
github 사이트에서 직접 폴더 생성하는 법 (0) | 2024.01.24 |
git repository 이름 변경, README 링크 바뀜 문제 (0) | 2024.01.18 |