extension Collection
extension Collection where Element: Collatable
주어진 위치의 요소가 먼저 끝나도록 요소가 재정렬된 이 컬렉션의 뷰를 반환합니다.
i
까지의 컬렉션의 하위 시퀀스는i
에서 시작하는 하위 시퀀스 이후로 이동됩니다. 그렇지 않으면 각 파티션 내의 요소 순서는 변경되지 않습니다.let a = [10, 20, 30, 40, 50, 60, 70]
let r = a.rotated(shiftingToStart: 3)
// r.elementsEqual([40, 50, 60, 70, 10, 20, 30])선언
func rotated(shiftingToStart i: Index) -> RotatedCollection<Self>
매개변수
i
결과에서 첫 번째로 표시되어야 하는 컬렉션의 위치입니다.
i
컬렉션의 유효한 인덱스여야 합니다.반환 값
i
의 요소가 첫 번째가 되도록 이 컬렉션의 요소에 대한 회전된 보기입니다.선언
func stablyPartitioned(
isSuffixElement p: (Element) -> Bool
) -> [Element]조건자와 일치하는 컬렉션의 첫 번째 요소 인덱스를 반환합니다.
마치
self.partition(by: predicate)
가 이미 호출된 것처럼 컬렉션은 이미 조건자에 따라 분할되어야 합니다.- 효율성:
predicate
의 최대 log(N) 호출. 여기서 N은self
의 길이입니다.self
RandomAccessCollection
준수하는 경우 최대 log(N) 인덱스 오프셋 작업; 그렇지 않으면 최대 N개의 그러한 작업이 수행됩니다.
선언
func partitionPoint(
where predicate: (Element) throws -> Bool
) rethrows -> Index- 효율성:
minBatchSize
또는minBatchSize + 1
크기의 자체 청크에서 병렬로 계산된self.map(transform)
반환합니다.필요하다
transform
여러 스레드에서 호출해도 안전합니다.선언
func concurrentMap<B>(
minBatchSize: Int = 1,
_ transform: (Element) -> B
) -> [B]두 컬렉션의 요소를 읽지 않고
selection
에 의해 지정된 위치와 순서로self
요소 컬렉션을 반환합니다.복잡성
오(1)선언
public func sampled<Selection: Collection>(at selection: Selection)
-> Sampling<Self, Selection>self
의 겹치지 않는 가장 긴 조각을 반환합니다. 첫 번째 요소부터 시작하여 최대 길이는batchSize
입니다.선언
public func inBatches(of batchSize: Int) -> Slices<Self>
self
의n
번째 위치를 반환합니다.선언
func index(atOffset n: Int) -> Index
self
의 요소를 대조한 결과입니다.선언
public var collated: Element { get }
padValue
로 최대 모양으로 채워지고 대조된self
의 요소를 반환합니다.선언
public func paddedAndCollated<Scalar: Numeric>(
with padValue: Scalar, atStart: Bool = false
) -> Element
where Element == Tensor<Scalar>매개변수
atStart
이것이
true
이면 시작 부분에 패딩을 추가하고 그렇지 않으면 끝 부분에 패딩을 추가합니다. 기본값은false
입니다.
extension Collection
extension Collection where Element: Collatable
주어진 위치의 요소가 먼저 끝나도록 요소가 재정렬된 이 컬렉션의 뷰를 반환합니다.
i
까지의 컬렉션의 하위 시퀀스는i
에서 시작하는 하위 시퀀스 이후로 이동됩니다. 그렇지 않으면 각 파티션 내의 요소 순서는 변경되지 않습니다.let a = [10, 20, 30, 40, 50, 60, 70]
let r = a.rotated(shiftingToStart: 3)
// r.elementsEqual([40, 50, 60, 70, 10, 20, 30])선언
func rotated(shiftingToStart i: Index) -> RotatedCollection<Self>
매개변수
i
결과에서 첫 번째로 표시되어야 하는 컬렉션의 위치입니다.
i
컬렉션의 유효한 인덱스여야 합니다.반환 값
i
의 요소가 첫 번째가 되도록 이 컬렉션의 요소에 대한 회전된 보기입니다.선언
func stablyPartitioned(
isSuffixElement p: (Element) -> Bool
) -> [Element]조건자와 일치하는 컬렉션의 첫 번째 요소 인덱스를 반환합니다.
마치
self.partition(by: predicate)
가 이미 호출된 것처럼 컬렉션은 이미 조건자에 따라 분할되어야 합니다.- 효율성:
predicate
의 최대 log(N) 호출. 여기서 N은self
의 길이입니다.self
RandomAccessCollection
준수하는 경우 최대 log(N) 인덱스 오프셋 작업; 그렇지 않으면 최대 N개의 그러한 작업이 수행됩니다.
선언
func partitionPoint(
where predicate: (Element) throws -> Bool
) rethrows -> Index- 효율성:
minBatchSize
또는minBatchSize + 1
크기의 자체 청크에서 병렬로 계산된self.map(transform)
반환합니다.필요하다
transform
여러 스레드에서 호출해도 안전합니다.선언
func concurrentMap<B>(
minBatchSize: Int = 1,
_ transform: (Element) -> B
) -> [B]두 컬렉션의 요소를 읽지 않고
selection
에 의해 지정된 위치와 순서로self
요소 컬렉션을 반환합니다.복잡성
오(1)선언
public func sampled<Selection: Collection>(at selection: Selection)
-> Sampling<Self, Selection>self
의 겹치지 않는 가장 긴 조각을 반환합니다. 첫 번째 요소부터 시작하여 최대 길이는batchSize
입니다.선언
public func inBatches(of batchSize: Int) -> Slices<Self>
self
의n
번째 위치를 반환합니다.선언
func index(atOffset n: Int) -> Index
self
의 요소를 대조한 결과입니다.선언
public var collated: Element { get }
padValue
로 최대 모양으로 채워지고 대조된self
의 요소를 반환합니다.선언
public func paddedAndCollated<Scalar: Numeric>(
with padValue: Scalar, atStart: Bool = false
) -> Element
where Element == Tensor<Scalar>매개변수
atStart
이것이
true
이면 시작 부분에 패딩을 추가하고 그렇지 않으면 끝 부분에 패딩을 추가합니다. 기본값은false
입니다.