Dart 中是否有用于对排序列表进行二分搜索的标准库函数?

Nic*_*cue 5 binary-search dart

Dart 中是否有对排序列表进行二分搜索的标准库方法?

我用谷歌搜索了一下,似乎在 flutter 中有一个,但在 dart 中找不到。

我还发现了这个错误,其中提到了lowerBound()二分搜索。似乎曾经有一个集合/算法包,但这似乎已被弃用,我在collections.dart.

编写一个并不难,但如果可能的话,我更喜欢使用标准库方法。

Nic*_*cue 7

这些方法位于collection.dart包中。

它们可能有点难以发现。如果你向下滚动,它们就在该Functions部分中,并且都有binarySearch()lowerBound()

重要的是要注意这是package:collection,而不是dart:collection也存在。但两者都是由 Dart 开发人员编写的。

要导入它,请使用:

import 'package:collection/collection.dart';
Run Code Online (Sandbox Code Playgroud)