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
است.