Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

prev_permutation

Boost , Chapter 1. Range 2.0 , Permutation algorithms

Boost C++ LibrariesHomeLibrariesPeopleFAQMore

PrevUpHomeNext
Prototype

template<class BidirectionalRange>
bool prev_permutation(BidirectionalRange& rng);
template<class BidirectionalRange>
bool prev_permutation(const BidirectionalRange& rng);
template<class BidirectionalRange, class Compare>
bool prev_permutation(BidirectionalRange& rng, Compare pred);
template<class BidirectionalRange, class Compare>
bool prev_permutation(const BidirectionalRange& rng, Compare pred);

Description

prev_permutation преобразует диапазон элементов rng в лексикографически следующую меньшую перестановку элементов, если такая перестановка существует. Если не существует, то диапазон преобразуется в лексикографически наибольшую перестановку и возвращается ложное. true возвращается, когда успешно генерируется следующая меньшая перестановка.

Соотношение упорядочивания определяется с помощью оператора< в непредикатных версиях и путем оценки pred в предикатных версиях.

Definition

Defined in the header file boost/range/algorithm/permutation.hpp

Requirements

For the non-predicate versions:

  • BidirectionalRange является моделью Bidirectional Range Концепция.
  • BidirectionalRange является изменчивым.
  • BidirectionalRange представляет собой модель LessThanComparableConcept.
  • Упорядочение объектов типа BidirectionalRange представляет собой строгое слабое упорядочение, как определено в требованиях LessThanComparableConcept.

For the predicate versions:

  • BidirectionalRange является моделью Bidirectional Range Концепция.
  • BidirectionalRange является изменчивым.
  • Compare является моделью StrictWeakOrderingConcept.
  • Тип значения BidirectionalRange можно преобразовать в оба типа аргументов Compare.
Complexity

Линейный. Максимально расстояние(рнг) / 2 свопов.


PrevUpHomeNext

Статья prev_permutation раздела Chapter 1. Range 2.0 Permutation algorithms может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Permutation algorithms ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-05-20 09:34:09/0.0060100555419922/0