View source code
Display the source code in std/range.d from which this page was generated on
github.
Improve this page
Quickly fork, edit online, and submit a pull request for this page.
Requires a signed-in GitHub account. This works well for small changes.
If you'd like to make larger changes you may want to consider using
local clone.
Page wiki
View or edit the community-maintained wiki page associated with this page.
Enum std.range.member SearchPolicy.binarySearch
Searches using a classic interval halving policy. The search
starts in the middle of the range, and each search step cuts
the range in half. This policy finds a value in Ο(log(n)
)
time but is less cache friendly than
for large
ranges. The gallop
policy is used as the last step
of binarySearch
, trot
, gallop
, and trotBackwards
strategies.
gallopBackwards
Declaration
enum SearchPolicy { // ... binarySearch = 3, // ... }
Authors
Andrei Alexandrescu, David Simcha, and Jonathan M Davis. Credit for some of the ideas in building this module goes to Leonardo Maffi.