stl中的nth_element()方法的使用 通過呼叫nth_element(start, start+n, end)
方法可以使第n大元素處於第n位置(從0開始,其位置是下標為
n的元素),並且比這個元素小的元素都排在這個元素之前,比這個元素大的元素都排在這個元素之後,但不能保證他們是有序的,下面是這個方法的具體使用方法.
1 #include 23 #include 4
5 #include 6
7 #include 8
9using
namespace
std;
1011
1213
intmain()
1415
3637
/*由於賦值時是有序的,下面random_shuffle()方法將這些資料的順序打亂
*/38
39random_shuffle(numbers.begin(),numbers.end());
4041
4243
//location of first element of numbers
4445 start =numbers.begin() ;
4647
4849
//one past the location last element of numbers
5051 end =numbers.end() ;
5253
5455 cout << "
before calling nth_element/n
"<5657
5859
//print content of numbers
6061 cout << "
numbers /n
"<6869
7071
/*72
73* partition the elements by the 8th element,
7475
*(notice that 0th is the first element)
7677
*/78
79 nth_element(start, start+8
, end) ;
8081
8283 cout << "
after calling nth_element/n
"<8485
8687 cout << "
numbers /n
"<9495 system("
pause");
9697 }
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 元素放到它該放的位置上,左邊元素都小於它,右邊元素都大於它...