public protocol MutableCollectionAlgorithms: MutableCollection
where SubSequence: MutableCollectionAlgorithms
Proporciona puntos de personalización para MutableCollection
algoritmos.
Si se incorporan a la biblioteca estándar, estos requisitos podrían simplemente ser parte de MutableCollection
. Mientras tanto, se puede declarar la conformidad de una colección de MutableCollectionAlgorithms
para obtener estos puntos de personalización para ser utilizados de otros algoritmos definidos en MutableCollectionAlgorithms
.
Gira los elementos de la colección de modo que el elemento en
middle
extremos primero.Complejidad
O (n)Declaración
@discardableResult mutating mutating func rotate(shiftingToStart middle: Index) -> Index
Valor devuelto
El nuevo índice del elemento que fue la primera rotación previa.
Mueve todos los elementos que satisfacen
isSuffixElement
en un sufijo de la colección, conservando su orden relativo, y vuelve al 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