일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- 오류
- clone
- console창
- Python
- error 해결
- database
- MySQL
- DataGrip
- localhost
- import data
- 데이터베이스
- 따옴표 삭제
- vscode
- PHPStorm
- run sql script
- 깃 토큰
- 파이썬
- cmd
- 에러
- visualstudio code
- 단축키
- Visual Studio Code
- OrCAD 다운로드
- csv
- github token
- jupyter
- github clone
- 클론
- php
- error
Archives
- Today
- Total
개발 노트
7. 기초 정렬 알고리즘 문제 풀이 본문
백준 사이트
Baekjoon Online Judge
Baekjoon Online Judge 프로그래밍 문제를 풀고 온라인으로 채점받을 수 있는 곳입니다.
www.acmicpc.net
- 처음이면 이 두 카테고리 중 풀기!
문제 > 단계별로 풀어보기
문제 > 알고리즘 분류
- 1초에 1억번 연산 가능하다고 생각하면 된다.
- 웬만한 알고리즘 문제를 풀 때 배열은 +1의 크기로 해놓는 것이 좋다.
만약에 N이 1000이라면 하단처럼 배열의 크기는 1001로 해놓는다.
- 소스코드 비공개, 언어는 c++ 11로 설정.
- 백준 내 프로필 : https://solved.ac/profile/1010hy
---
1. 단순정렬 : https://www.acmicpc.net/problem/2750
이 문제에서는 1000 x 1000 = 1000000이기 때문에 1억보다 작은 숫자이므로 계산 시간의 속도 상관없이 어느 정렬이든 사용할 수 있다.
2. 세 수 정렬 : https://www.acmicpc.net/problem/2752
3. 100만 개 정렬 : https://www.acmicpc.net/problem/2751
100만x100만은 1억이 넘기 때문에 반드시 시간복잡도가 O(N*logN)인 정렬로 풀어야 한다.
퀵정렬의 평균 시간복잡도는 O(N*logN)이지만, 최악의 경우 O(N*N)이 되기 때문에 퀵정렬을 사용하여 풀었을 때 시간초과가 되었다..
반응형
'알고리즘 공부 : 24.01.18~ > 1. 알고리즘 기초 정렬' 카테고리의 다른 글
백준알고리즘 ERROR : class HelloWorld is public, should be declared in a file named HelloWorld.java (0) | 2024.01.30 |
---|---|
백준과 깃허브 연동 (0) | 2024.01.30 |
5. 퀵 정렬(Quick Sort) 6.퀵 정렬(Quick Sort)의 구현 및 한계점 분석 (4) | 2024.01.30 |
4. 삽입 정렬(Insertion Sort) (0) | 2024.01.24 |
3. 버블 정렬(Bubble Sort) (1) | 2024.01.24 |