mirror of
				https://github.com/saitohirga/WSJT-X.git
				synced 2025-10-27 11:00:32 -04:00 
			
		
		
		
	
		
			
	
	
		
			68 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			68 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
|  | [/ | ||
|  |     Copyright 2010 Neil Groves | ||
|  |     Distributed under the Boost Software License, Version 1.0. | ||
|  |     (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) | ||
|  | /] | ||
|  | [section:nth_element nth_element] | ||
|  | 
 | ||
|  | [heading Prototype] | ||
|  | 
 | ||
|  | `` | ||
|  | template<class RandomAccessRange> | ||
|  | RandomAccessRange& nth_element( | ||
|  |     RandomAccessRange& rng, | ||
|  |     typename range_iterator<RandomAccessRange>::type nth); | ||
|  | 
 | ||
|  | template<class RandomAccessRange> | ||
|  | const RandomAccessRange& nth_element( | ||
|  |     const RandomAccessRange& rng, | ||
|  |     typename range_iterator<const RandomAccessRange>::type nth); | ||
|  | 
 | ||
|  | template<class RandomAccessRange> | ||
|  | RandomAccessRange& nth_element( | ||
|  |     RandomAccessRange& rng, | ||
|  |     typename range_iterator<RandomAccessRange>::type nth, | ||
|  |     BinaryPredicate sort_pred); | ||
|  | 
 | ||
|  | template<class RandomAccessRange> | ||
|  | const RandomAccessRange& nth_element( | ||
|  |     const RandomAccessRange& rng, | ||
|  |     typename range_iterator<const RandomAccessRange>::type nth, | ||
|  |     BinaryPredicate sort_pred); | ||
|  | `` | ||
|  | 
 | ||
|  | [heading Description] | ||
|  | 
 | ||
|  | `nth_element` partially orders a range of elements. `nth_element` arranges the range `rng` such that the element corresponding with the iterator `nth` is the same as the element that would be in that position if `rng` has been sorted. | ||
|  | 
 | ||
|  | 
 | ||
|  | [heading Definition] | ||
|  | 
 | ||
|  | Defined in the header file `boost/range/algorithm/nth_element.hpp` | ||
|  | 
 | ||
|  | [heading Requirements] | ||
|  | 
 | ||
|  | [*For the non-predicate version:] | ||
|  | 
 | ||
|  | * `RandomAccessRange` is a model of the __random_access_range__ Concept. | ||
|  | * `RandomAccessRange` is mutable. | ||
|  | * `RandomAccessRange`'s value type is a model of the `LessThanComparableConcept`. | ||
|  | * The ordering relation on `RandomAccessRange`'s value type is a [*/strict weak ordering/], as defined in the `LessThanComparableConcept` requirements. | ||
|  | 
 | ||
|  | 
 | ||
|  | [*For the predicate version:] | ||
|  | 
 | ||
|  | * `RandomAccessRange` is a model of the __random_access_range__ Concept. | ||
|  | * `RandomAccessRange` is mutable. | ||
|  | * `BinaryPredicate` is a model of the `StrictWeakOrderingConcept`. | ||
|  | * `RandomAccessRange`'s value type is convertible to both of `BinaryPredicate`'s argument types. | ||
|  | 
 | ||
|  | 
 | ||
|  | [heading Complexity] | ||
|  | 
 | ||
|  | On average, linear in `distance(rng)`. | ||
|  | 
 | ||
|  | [endsect] | ||
|  | 
 | ||
|  | 
 |