<algorithm>
헤더를 인클루드 해야한다.
C++ STL에서 제공한다.
O(NlogN) 시간 복잡도를 가진다.
퀵정렬은 피봇을 어떻게 잡느냐에 따라 최악의경우 O(N^2)
의 시간 복잡도를 가지지만
sort 함수의 알고리즘은 최악의 경우에도 O(NLogN)
을 보장하는 intro sort로 구현되어있다.
사용법
sort(배열 시작주소, 배열 끝주소+1); 로 사용한다.
즉, 배열의 원소가 n이라면 sort(arr, arr+n)으로 사용하면 된다.
아래는 사용 코드 예시
#include<cstdio>
#include<iostream>
#include<algorithm>
using namespace std;
int main() {
int len = 5;
int arr[len] = {1,3,5,2,4};
sort(arr, arr+len);
for(int i=0;i<n;i++)
printf("%d\n", arr[i]);
}
'PL > C++' 카테고리의 다른 글
call by value, address, reference 차이점 정리 (0) | 2022.07.19 |
---|---|
lvalue와 rvalue의 이해, 증감연산자와 앰퍼센드 연산자 (0) | 2022.07.19 |
scanf 사용시 버퍼에 남은 linefeed 처리 (0) | 2022.07.14 |
우분투에서 scanf()로 EOF 입력하기/받기 (0) | 2022.06.29 |
포인터변수의 이해와 주소연산자 (0) | 2022.06.28 |
댓글