public protocol MutableCollectionAlgorithms: MutableCollection
where SubSequence: MutableCollectionAlgorithms
Zapewnia punkty dostosowywania dla algorytmów MutableCollection
.
Jeśli zostaną włączone do biblioteki standardowej, wymagania te będą po prostu częścią MutableCollection
. W międzyczasie możesz zadeklarować zgodność kolekcji z MutableCollectionAlgorithms
aby uzyskać te punkty dostosowywania, które będą używane z innych algorytmów zdefiniowanych w MutableCollectionAlgorithms
.
Obraca elementy kolekcji w taki sposób, że element
middle
kończy się jako pierwszy.Złożoność
NA )Deklaracja
@discardableResult mutating mutating func rotate(shiftingToStart middle: Index) -> Index
Wartość zwracana
Nowy indeks elementu, który był pierwszym przedobrotem.
Przenosi wszystkie elementy spełniające kryteria
isSuffixElement
do sufiksu kolekcji, zachowując ich względną kolejność, i zwraca początek wynikowego sufiksu.Złożoność
O(n) gdzie n jest liczbą elementów.Deklaracja
@discardableResult mutating func stablePartition( isSuffixElement: (Element) throws -> Bool ) rethrows -> Index