Определение кучи, используемое std::is_heap и std::make_heapC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Определение кучи, используемое std::is_heap и std::make_heap

Сообщение Anonymous »

Согласно этой странице, существует два определения кучи (используются std::make_heap, std::is_heap и т. д.):До C++20:

Диапазон произвольного доступа [,last) представляет собой кучу относительно
компаратора comp if bool(comp(first[(i - 1) / 2] , first)) имеет значение false
для всех целых чисел i в (
, последний — первый).

Начиная с C++20:

Диапазон произвольного доступа [, last) представляет собой кучу по отношению к компаратору comp, если диапазон представляет собой кучу по отношению к comp и

Код: Выделить всё

std::identity{}
(проекция идентичности).

У вас есть более простое определение? Например, когда comp имеет значение std::less ? Я не понимаю использования.

Подробнее здесь: https://stackoverflow.com/questions/788 ... dmake-heap
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»