public protocol MutableCollectionAlgorithms: MutableCollection
where SubSequence: MutableCollectionAlgorithms
MutableCollection
アルゴリズムのカスタマイズ ポイントを提供します。
標準ライブラリに組み込まれた場合、これらの要件はMutableCollection
の一部になります。その間、コレクションのMutableCollectionAlgorithms
への適合性を宣言して、これらのカスタマイズ ポイントをMutableCollectionAlgorithms
で定義された他のアルゴリズムから使用できるようにすることができます。
middle
の要素が最初になるようにコレクションの要素を回転します。複雑
の上)宣言
@discardableResult mutating mutating func rotate(shiftingToStart middle: Index) -> Index
戻り値
最初に回転前に行われた要素の新しいインデックス。
isSuffixElement
を満たすすべての要素をコレクションのサフィックスに移動し、相対的な順序を維持して、結果のサフィックスの開始を返します。複雑
O(n) ここで、n は要素の数です。宣言
@discardableResult mutating func stablePartition( isSuffixElement: (Element) throws -> Bool ) rethrows -> Index