public protocol MutableCollectionAlgorithms: MutableCollection
where SubSequence: MutableCollectionAlgorithms
Proporciona puntos de personalización para los algoritmos MutableCollection
.
Si se incorporan a la biblioteca estándar, estos requisitos serían solo parte de MutableCollection
. Mientras tanto, puede declarar la conformidad de una colección con MutableCollectionAlgorithms
para que estos puntos de personalización se utilicen desde otros algoritmos definidos en MutableCollectionAlgorithms
.
Gira los elementos de la colección para que el elemento del
middle
termine primero.Complejidad
En )Declaración
@discardableResult mutating mutating func rotate(shiftingToStart middle: Index) -> Index
Valor de retorno
El nuevo índice del elemento que fue la primera rotación previa.
Mueve todos los elementos que satisfacen
isSuffixElement
a un sufijo de la colección, conservando su orden relativo y devuelve el inicio del sufijo resultante.Complejidad
O(n) donde n es el número de elementos.Declaración
@discardableResult mutating func stablePartition( isSuffixElement: (Element) throws -> Bool ) rethrows -> Index