std::sortable

出自cppreference.com
 
 
迭代器庫
迭代器概念
迭代器原語
算法概念與工具
間接可調用概念
常用算法要求
(C++20)
(C++20)
(C++20)
工具
(C++20)
迭代器適配器
範圍訪問
(C++11)(C++14)
(C++14)(C++14)  
(C++11)(C++14)
(C++14)(C++14)  
(C++17)(C++20)
(C++17)
(C++17)
 
在標頭 <iterator> 定義
template< class I, class Comp = ranges::less, class Proj = std::identity >
concept sortable =
    std::permutable<I> &&
    std::indirect_strict_weak_order<Comp, std::projected<I, Proj>>;
(C++20 起)

sortable 概念指定對於「按照 Comp 將範圍重排為有序範圍的算法」的要求。

語義要求

std::sortable<I, R, P> 僅若其所蘊含的所有概念均被實現才得以實現。

參閱

將範圍按升序排序
(算法函數對象) [編輯]
將範圍中元素排序,同時保持相等元之間的順序
(算法函數對象) [編輯]
將範圍中前 N 個元素排序
(算法函數對象) [編輯]
將給定範圍部分排序,確保其按給定元素劃分
(算法函數對象) [編輯]
就地合併兩個有序範圍
(算法函數對象) [編輯]
添加元素到最大堆
(算法函數對象) [編輯]
移除最大堆中最大元
(算法函數對象) [編輯]
從元素範圍創建最大堆
(算法函數對象) [編輯]
將最大堆變成按升序排序的元素範圍
(算法函數對象) [編輯]
生成元素範圍的下一個字典序更大的排列
(算法函數對象) [編輯]
生成元素範圍的下一個字典序更小的排列
(算法函數對象) [編輯]