public protocol MutableCollectionAlgorithms: MutableCollection
where SubSequence: MutableCollectionAlgorithms
نقاط سفارشی سازی را برای الگوریتم های MutableCollection
فراهم می کند.
اگر این الزامات در کتابخانه استاندارد گنجانده شود، فقط بخشی از MutableCollection
خواهد بود. در عین حال، میتوانید مطابقت یک مجموعه را با MutableCollectionAlgorithms
اعلام کنید تا این نقاط سفارشیسازی را از الگوریتمهای دیگر تعریفشده در MutableCollectionAlgorithms
استفاده کنید.
عناصر مجموعه را می چرخاند به طوری که عنصر در
middle
ابتدا به پایان برسد.پیچیدگی
O( n )اعلامیه
@discardableResult mutating mutating func rotate(shiftingToStart middle: Index) -> Index
ارزش بازگشتی
شاخص جدید عنصری که ابتدا پیش چرخش بود.
تمام عناصر راضی کننده
isSuffixElement
به پسوندی از مجموعه منتقل می کند و ترتیب نسبی آنها را حفظ می کند و شروع پسوند حاصل را برمی گرداند.پیچیدگی
O(n) که در آن n تعداد عناصر است.اعلامیه
@discardableResult mutating func stablePartition( isSuffixElement: (Element) throws -> Bool ) rethrows -> Index