STL中的nth element 方法的使用

2021-08-04 09:38:53 字數 1954 閱讀 9118

stl中的nth_element()方法的使用 通過呼叫nth_element(start, start+n, end) 方法可以使第n大元素處於第n位置(從0開始,其位置是下標為 n的元素),並且比這個元素小的元素都排在這個元素之前,比這個元素大的元素都排在這個元素之後,但不能保證他們是有序的,下面是這個方法的具體使用方法.

[csharp]view plain

copy

print?

#pragma warning(disable: 4786)

#include 

#include 

#include 

#include 

using

namespace std;  

int main()  

/*由於賦值時是有序的,下面random_shuffle()方法將這些資料的順序打亂*/

random_shuffle(numbers.begin(),numbers.end());  

// location of first element of numbers

start = numbers.begin() ;   

// one past the location last element of numbers

end = numbers.end() ;       

cout << "before calling nth_element/n"

<< endl ;  

// print content of numbers

cout << "numbers /n"

<< endl ;  

/* * partition the elements by the 8th element,

*(notice that 0th is the first element)

*/nth_element(start, start+8, end) ;  

cout << "after calling nth_element/n"

<< endl ;  

cout << "numbers /n"

<< endl ;  

system("pause");  

}  

#pragma warning(disable: 4786)

#include #include #include #include using namespace std;

int main()

/*由於賦值時是有序的,下面random_shuffle()方法將這些資料的順序打亂*/

random_shuffle(numbers.begin(),numbers.end());

// location of first element of numbers

start = numbers.begin() ;

// one past the location last element of numbers

end = numbers.end() ;

cout << "before calling nth_element/n" << endl ;

// print content of numbers

cout << "numbers /n" << endl ;

/* * partition the elements by the 8th element,

*(notice that 0th is the first element)

*/ nth_element(start, start+8, end) ;

cout << "after calling nth_element/n" << endl ;

cout << "numbers /n" << endl ;

system("pause");

}

STL中的nth element 方法的使用

stl中的nth element 方法的使用 通過呼叫nth element start,start n,end 方法可以使第n大元素處於第n位置 從0開始,其位置是下標為 n的元素 並且比這個元素小的元素都排在這個元素之前 從0開始有n 1個數 比這個元素大的元素都排在這個元素之後,但不能保證他們...

STL中的nth element 方法的使用

stl中的nth element 方法的使用 通過呼叫nth element start,start n,end 方法可以使第n大元素處於第n位置 從0開始,其位置是下標為 n的元素 並且比這個元素小的元素都排在這個元素之前,比這個元素大的元素都排在這個元素之後,但不能保證他們是有序的,下面是這個方...

C 的STL模板類 nth element

在c 的stl庫中,提供了nth element這樣乙個函式,標頭檔案algorithm 它的用法是nth element a l,a k,a r 這樣它會使a這個陣列中區間 l,r 內的第k大的元素處在第k個位置上 相對位置 將第k th 元素放到它該放的位置上,左邊元素都小於它,右邊元素都大於它...