public protocol MutableCollectionAlgorithms: MutableCollection
where SubSequence: MutableCollectionAlgorithms
Fornece pontos de personalização para algoritmos MutableCollection
.
Se incorporados à biblioteca padrão, esses requisitos fariam apenas parte de MutableCollection
. Enquanto isso, você pode declarar a conformidade de uma coleção para MutableCollectionAlgorithms
para fazer com que esses pontos de personalização sejam usados a partir de outros algoritmos definidos em MutableCollectionAlgorithms
.
Gira os elementos da coleção para que o elemento do
middle
fique primeiro.Complexidade
Sobre )Declaração
@discardableResult mutating mutating func rotate(shiftingToStart middle: Index) -> Index
Valor de retorno
O novo índice do elemento que foi a primeira pré-rotação.
Move todos os elementos que satisfazem
isSuffixElement
para um sufixo da coleção, preservando sua ordem relativa, e retorna o início do sufixo resultante.Complexidade
O(n) onde n é o número de elementos.Declaração
@discardableResult mutating func stablePartition( isSuffixElement: (Element) throws -> Bool ) rethrows -> Index