use*_*593 -4 delphi delphi-xe6
如何使用二进制搜索找到插入点,以便我可以将项目插入到已排序的数组中?默认设置TArray.BinarySearch不提供此类功能.
TArray.BinarySearch确实提供了所需的功能 - 它FoundIndex为插入找到了正确的index():
如果BinarySearch找到元素则返回True,否则返回False.
如果找到,FoundIndex包含Item的从零开始的索引.
如果未找到,则FoundIndex包含大于Item的第一个条目的索引.
示例:对于(2,4,7)数组和请求值5,它将找到索引2 - 您必须扩展数组,将数组的其余部分从第2个位置移开,然后将5插入第2个位置.