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)
قبلاً فراخوانی شده باشد.- کارایی: حداکثر log(N) احضارات
predicate
، که در آن N طولself
است. در صورتی کهself
باRandomAccessCollection
مطابقت داشته باشد، حداکثر log(N) عملیات تعدیل شاخص را انجام می دهد. حداکثر N چنین عملیات در غیر این صورت.
اعلام
func partitionPoint( where predicate: (Element) throws -> Bool ) rethrows -> Index
- کارایی: حداکثر log(N) احضارات
self.map(transform)
را برمیگرداند که به صورت موازی بر روی تکههایی از خود با اندازهminBatchSize
یاminBatchSize + 1
محاسبه شده است.نیاز دارد
transform
برای فراخوانی از چندین رشته امن است.اعلام
func concurrentMap<B>( minBatchSize: Int = 1, _ transform: (Element) -> B ) -> [B]
مجموعه ای از عناصر
self
را در موقعیت ها و به ترتیب مشخص شده توسطselection
بدون خواندن عناصر هر یک از مجموعه ها برمی گرداند.پیچیدگی
O (1)اعلام
public func sampled<Selection: Collection>(at selection: Selection) -> Sampling<Self, Selection>
طولانیترین تکههای غیر همپوشانی
self
را برمیگرداند، که با اولین عنصر شروع میشود و حداکثر طولbatchSize
دارد.اعلام
public func inBatches(of batchSize: Int) -> Slices<Self>
موقعیت
n
را درself
برمی گرداند.اعلام
func index(atOffset n: Int) -> Index
نتیجه ترکیب عناصر
self
.اعلام
public var collated: Element { get }
عناصر
self
را برمیگرداند که باpadValue
به حداکثر شکل اضافه شده و ترکیب شدهاند.اعلام
public func paddedAndCollated<Scalar: Numeric>( with padValue: Scalar, atStart: Bool = false ) -> Element where Element == Tensor<Scalar>
مولفه های
atStart
اگر این
true
باشد، بالشتک را در ابتدا و در غیر این صورت پایان را اضافه می کند. مقدار پیش فرضfalse
است .