template <class It>
int permutation_sign(It first, It last)
{
+ using std::swap;
if (first == last)
return 0;
--last;
bool swapped = false;
while (i != first) {
if (*i < *other) {
- std::iter_swap(other, i);
+ swap(*other, *i);
flag = other;
swapped = true;
sign = -sign;
swapped = false;
while (i != last) {
if (*other < *i) {
- std::iter_swap(i, other);
+ swap(*i, *other);
flag = other;
swapped = true;
sign = -sign;