NSArray
имеет - (NSUInteger)indexOfObject:(id)obj inSortedRange:(NSRange)r options:(NSBinarySearchingOptions)opts usingComparator:(NSComparator)cmp
, чтобы определить позицию вставки нового объекта в отсортированном массиве.
Каков наилучший и высокопроизводительный способ сделать это в чистом Swift?
Что-то по строкам:
var myArray = ["b", "e", "d", "a"]
myArray.sort { $0 < $1 }
// myArray is now [a, b, d, e]
myArray.append("c")
myArray.sort { $0 < $1 }
// myArray is now [a, b, c, d, e]
Вместо добавления нового элемента и сортировки массива, я хотел бы выяснить правильную позицию и вставить элемент:
let index = [... how to calculate this index ??? ...]
myArray.insert("c", atIndex: index)