public protocol MutableCollectionAlgorithms: MutableCollection
where SubSequence: MutableCollectionAlgorithms
يوفر نقاط التخصيص لخوارزميات MutableCollection
.
إذا تم دمجها في المكتبة القياسية، فستكون هذه المتطلبات مجرد جزء من MutableCollection
. في غضون ذلك، يمكنك إعلان توافق مجموعة مع MutableCollectionAlgorithms
للحصول على نقاط التخصيص هذه لاستخدامها من خوارزميات أخرى محددة في MutableCollectionAlgorithms
.
يقوم بتدوير عناصر المجموعة بحيث ينتهي العنصر الموجود في
middle
أولاً.تعقيد
على )تصريح
@discardableResult mutating mutating func rotate(shiftingToStart middle: Index) -> Index
قيمة الإرجاع
الفهرس الجديد للعنصر الذي تم تدويره لأول مرة.
ينقل كل العناصر التي تُرضي
isSuffixElement
إلى لاحقة المجموعة، مع الحفاظ على ترتيبها النسبي، ويُرجع بداية اللاحقة الناتجة.تعقيد
O(n) حيث n هو عدد العناصر.تصريح
@discardableResult mutating func stablePartition( isSuffixElement: (Element) throws -> Bool ) rethrows -> Index