Каким будет лучший способ проверить сортировку std::vector? Есть ли что-то быстрее, чем цикл, проверяющий, что v[i]<=v[i+1]? Быстрее/чище с итераторами? Или на самом деле лучше просто называть sort каждый раз (хотя случай "v уже отсортирован" довольно распространен)?
Мы можем с уверенностью предположить, что вектор содержит только POD, обычно float, а иногда double и int s.
Размер вектора нетривиальный (обычно несколько тысяч элементов), но не экстремальный (не размер гигабайта).
- в некоторых случаях мы будем сортировать вектор сразу после этого, однако есть и другие случаи, когда мы этого не делаем (это случай ошибки нашего алгоритма).
- мы по возможности используем флаг "IsSorted".