extension Collection
extension Collection where Element: Collatable
Retorna uma visão desta coleção com os elementos reordenados de forma que o elemento na posição dada termine primeiro.
A subsequência da recolha até
i
é deslocado para depois da subsequência a partir dei
. A ordem dos elementos dentro de cada partição permanece inalterada.let a = [10, 20, 30, 40, 50, 60, 70] let r = a.rotated(shiftingToStart: 3) // r.elementsEqual([40, 50, 60, 70, 10, 20, 30])
Declaração
func rotated(shiftingToStart i: Index) -> RotatedCollection<Self>
Parâmetros
i
A posição na coleção que deve ser a primeira no resultado.
i
deve ser um índice válido da coleção.Valor de retorno
Uma vista rodado sobre os elementos desta colecção, de tal modo que o elemento em
i
é pela primeira vez.Declaração
func stablyPartitioned( isSuffixElement p: (Element) -> Bool ) -> [Element]
Retorna o índice do primeiro elemento da coleção que corresponde ao predicado.
A recolha deve já ser dividida de acordo com o predicado, como se
self.partition(by: predicate)
já tinha sido chamado.- Eficiência: No máximo log (N) invocações de
predicate
, onde N é o comprimento deself
. No máximo log (N) índice de operações de se compensarself
ConformeRandomAccessCollection
; no máximo N tais operações de outra forma.
Declaração
func partitionPoint( where predicate: (Element) throws -> Bool ) rethrows -> Index
- Eficiência: No máximo log (N) invocações de
Devoluções
self.map(transform)
, calculado em paralelo em pedaços de auto de tamanhominBatchSize
ouminBatchSize + 1
.Requer
transform
é seguro para chamar de vários segmentos.Declaração
func concurrentMap<B>( minBatchSize: Int = 1, _ transform: (Element) -> B ) -> [B]
Retorna uma coleção de elementos de
self
nas posições e na ordem especificada pelaselection
sem ler os elementos de qualquer coleção.Complexidade
O (1)Declaração
public func sampled<Selection: Collection>(at selection: Selection) -> Sampling<Self, Selection>
Retorna a mais longa que não se sobrepõe fatias de
self
, começando com o primeiro elemento, com um comprimento máximo debatchSize
.Declaração
public func inBatches(of batchSize: Int) -> Slices<Self>
Retorna o
n
º posição noself
.Declaração
func index(atOffset n: Int) -> Index
O resultado da recolha de elementos de
self
.Declaração
public var collated: Element { get }
Retorna os elementos de
self
, preenchidos à forma máxima compadValue
e compilados.Declaração
public func paddedAndCollated<Scalar: Numeric>( with padValue: Scalar, atStart: Bool = false ) -> Element where Element == Tensor<Scalar>
Parâmetros
atStart
acrescenta o preenchimento no início se isso é
true
eo fim de outra forma. O valor padrão éfalse
.