parallel_radixsort 함수
지정한 범위에 있는 요소 정렬 알고리즘은 기 수를 사용 하는 비 내림차순으로 정렬 합니다.이 프로젝션 함수는 부호 없는 정수 처럼 키로 정렬 하는 요소를 투영할 수 있습니다 필요로 하는 안정 된 정렬을 함수입니다.기본 초기화를 정렬 하 고 해당 요소에 대 한 필수입니다.
template<
typename _Random_iterator
>
inline void parallel_radixsort(
const _Random_iterator &_Begin,
const _Random_iterator &_End
);
template<
typename _Allocator,
typename _Random_iterator
>
inline void parallel_radixsort(
const _Random_iterator &_Begin,
const _Random_iterator &_End
);
template<
typename _Allocator,
typename _Random_iterator
>
inline void parallel_radixsort(
const _Allocator& _Alloc,
const _Random_iterator &_Begin,
const _Random_iterator &_End
);
template<
typename _Random_iterator,
typename _Function
>
inline void parallel_radixsort(
const _Random_iterator &_Begin,
const _Random_iterator &_End,
const _Function &_Proj_func,
const size_t _Chunk_size = 256 * 256
);
template<
typename _Allocator,
typename _Random_iterator,
typename _Function
>
inline void parallel_radixsort(
const _Random_iterator &_Begin,
const _Random_iterator &_End,
const _Function &_Proj_func,
const size_t _Chunk_size = 256 * 256
);
template<
typename _Allocator,
typename _Random_iterator,
typename _Function
>
inline void parallel_radixsort(
const _Allocator& _Alloc,
const _Random_iterator &_Begin,
const _Random_iterator &_End,
const _Function &_Proj_func,
const size_t _Chunk_size = 256 * 256
);
매개 변수
_Random_iterator
반복기 형식 입력된 범위입니다._Allocator
STL 호환 메모리 할당자는 유형을 지정 합니다._Function
프로젝션 함수 유형을 지정 합니다._Begin
정렬 하려면 주소 범위의 첫 번째 요소 위치는 임의 액세스 반복기입니다._End
정렬할 위치 하나 과거 범위의 마지막 요소 주소 지정을 임의 액세스 반복기입니다._Alloc
STL 호환 메모리 할당자는 인스턴스._Proj_func
요소를 정수 값으로 변환 하는 프로젝션 사용자 정의 함수 개체입니다._Chunk_size
Mimimum 크기의 두 병렬 분할 됩니다.
설명
모든 오버 로드에 필요 n * sizeof(T) 추가 공간을 위치 n 수 요소를 정렬 하는 및 T 의 요소 형식입니다.시그니처가 있는 단항 투영 functorI _Proj_func(T) 요소에 지정 되 면 키를 반환 하는 데 필요한 위치 T 요소 형식인 및 I 부호 없는 정수 같은 형식입니다.
프로젝션 함수를 제공 하지 않는 경우, 단순히 요소를 반환 합니다. 기본 프로젝션 함수 정수 계열 형식에 사용 됩니다.함수 요소 프로젝션 함수 없는 경우 정수 계열 형식이 아닌 경우 컴파일할 수 없습니다.
할당 자가 형식이 나 인스턴스, STL 메모리 할당자를 지정 하지 않으면 std::allocator<T> 의 버퍼를 할당 하는 데 사용 됩니다.
입력된 범위의 두 청크로 나눕니다 알고리즘과 연속적으로 두 sub-chunks 병렬로 실행 하기 위해 각 청크를 나눕니다.선택적 인수는 _Chunk_size 알고리즘을 해야 처리는 청크 크기를 나타내기 위해 사용 되는 < _Chunk_size순차적으로 합니다.
요구 사항
헤더: ppl.h
네임 스페이스: 동시성