1.向后拷贝操作。将区间[_Front, _Tail]内容拷贝到_X,其中,_Tail的值对应_X。
template<class _BI1, class _BI2> inline
_BI2 copy_backward(_BI1 _Front, _BI1 _Tail, _BI2 _X)
{while (_Tail != _Front)
*--_X = *--_Tail;
return (_X); }
2.以值_Piv为枢轴,将区间[_F, _L]划分为两个部分,前一部分所有元素小于_Piv,后一部分所有元素大于或等于_Piv,其实就是快速排序的原理。
template<class _RI, class _Ty> inline
_RI _Unguarded_partition(_RI _F, _RI _L, _Ty _Piv)
{for (; ; ++_F)
{for (; *_F < _Piv; ++_F)
;
for (; _Piv < *--_L; )
;
if (_L <= _F)
return (_F);
iter_swap(_F, _L); //交换_F和_L指向的两个变量}}
2493

被折叠的 条评论
为什么被折叠?



