Notice
Recent Posts
Recent Comments
Link
250x250
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- HTTP상태
- 서버
- 백준
- 하루코딩
- 파이썬
- 정렬알고리즘
- 챗지피티
- JQuery
- 개발자
- 탐욕알고리즘
- 네트워크
- java
- 자바
- javascript
- ChatGPT
- API
- 알고리즘
- Spring
- codingtest
- HTTP
- SQLD
- 개발
- SQLP
- SQL
- 프로그래머스
- 코딩테스트
- 알고리즘코딩테스트
- jsp
- Python
- 그리디알고리즘
Archives
- Today
- Total
개발자's Life
[알고리즘] 중요하지 않은 듯 중요한 선택정렬 본문
728x90
반응형
선택정렬은 알고리즘 문제에 많이 적용되지는 않지만 어떤 문제 일부로 사용이될 수도 있고
기술면접 같은데서 필요할 경우가 있을수도 있다.
선택정렬 알고리즘은 간단하고 버블정렬과 동일하게 시간이 많이 걸린다.
버블정렬과 동일하게 시간이 많이 걸림 (N제곱)
내림차순, 오름차순에 따라 방식이 좀 다르다.
오름차순일 경우 배열 전체에서 최솟값을 계속 찾아 제일 왼쪽으로 쌓아 나간다.
52 | 3 | 23 | 12 |
최솟값 3과 맨 왼쪽에 있는 52 swap
▽
3 | 52 | 23 | 12 |
인덱스 0을 제외한 최솟값 12와 맨 왼쪽에 있는 52 swap
▽
3 | 12 | 23 | 52 |
최솟값 23이 이미 맨 왼쪽에 있어 유지가 되고 그 다음 인덱스로 넘어간다
▽
3 | 12 | 23 | 52 |
마지막 인덱스인 값만 남아서 그대로 유지가 되고 위와 같이 배열이 오름차순으로 정렬이 된다.
이와같이 선택정렬이 진행이 되고 알고리즘 문제에서 많이 사용은 되지 않지만 기술면접이나 가끔 사용되는 경우가 있다하니 알아놓는것도 좋은거 같다.
728x90
'코딩테스트 > Study' 카테고리의 다른 글
[알고리즘] 기준에 따라 시간복잡도에 많은 영향을 끼치는 퀵 정렬 (0) | 2023.08.01 |
---|---|
[알고리즘] 삽입정렬의 개념 및 예시 정리 (0) | 2023.08.01 |
[알고리즘] 로직이 단순한 버블정렬의 개념 (0) | 2023.07.29 |
[알고리즘] 스택과 큐에 대한 개념정리 (0) | 2023.07.27 |
[알고리즘] 구간 합 - 배열 (0) | 2023.07.27 |
Comments