[Issue 12762] New: Missing documentation for std.range.SearchPolicy.linear
via Digitalmars-d-bugs
digitalmars-d-bugs at puremagic.com
Sun May 18 01:04:53 PDT 2014
https://issues.dlang.org/show_bug.cgi?id=12762
Issue ID: 12762
Summary: Missing documentation for
std.range.SearchPolicy.linear
Product: D
Version: D2
Hardware: All
OS: All
Status: NEW
Severity: minor
Priority: P1
Component: websites
Assignee: nobody at puremagic.com
Reporter: bearophile_hugs at eml.cc
In this page:
http://dlang.org/phobos/std_range.html#SearchPolicy
The documentation about the enum std.range.SearchPolicy states:
enum SearchPolicy: int;
Policy used with the searching primitives lowerBound, upperBound, and
equalRange of SortedRange below.
trot
Searches with a step that is grows linearly (1, 2, 3,...) leading to a
quadratic search schedule (indexes tried are 0, 1, 3, 6, 10, 15, 21, 28,...)
Once the search overshoots its target, the remaining interval is searched using
binary search. The search is completed in ?(sqrt(n)) time. Use it when you are
reasonably confident that the value is around the beginning of the range.
gallop
Performs a galloping search algorithm, i.e. searches with a step that
doubles every time, (1, 2, 4, 8, ...) leading to an exponential search schedule
(indexes tried are 0, 1, 3, 7, 15, 31, 63,...) Once the search overshoots its
target, the remaining interval is searched using binary search. A value is
found in ?(log(n)) time.
But in the source code the enum contains a "linear" too:
/**
Policy used with the searching primitives $(D lowerBound), $(D
upperBound), and $(D equalRange) of $(LREF SortedRange) below.
*/
enum SearchPolicy
{
/**
Searches in a linear fashion.
*/
linear,
/**
Searches with a step that is grows linearly (1, 2, 3,...)
leading to a quadratic search schedule (indexes tried are 0, 1,
3, 6, 10, 15, 21, 28,...) Once the search overshoots its target,
the remaining interval is searched using binary search. The
search is completed in $(BIGOH sqrt(n)) time. Use it when you
are reasonably confident that the value is around the beginning
of the range.
*/
trot,
--
More information about the Digitalmars-d-bugs
mailing list