Binary Search Algorithm - Language Support

Language Support

Many standard libraries provide a way to do a binary search:

  • C provides algorithm function bsearch in its standard library.
  • C++'s STL provides algorithm functions binary_search, lower_bound and upper_bound.
  • Java offers a set of overloaded binarySearch static methods in the classes Arrays and Collections in the standard java.util package for performing binary searches on Java arrays and on Lists, respectively. They must be arrays of primitives, or the arrays or Lists must be of a type that implements the Comparable interface, or you must specify a custom Comparator object.
  • Microsoft's .NET Framework 2.0 offers static generic versions of the binary search algorithm in its collection base classes. An example would be System.Array's method BinarySearch(T array, T value).
  • Python provides the bisect module.
  • COBOL can perform binary search on internal tables using the SEARCH ALL statement.
  • Perl can perform a generic binary search using the CPAN module Search::Binary.
  • Go's sort standard library package contains functions Search, SearchInts, SearchFloat64s, and SearchStrings, which implement general binary search, as well as specific implementations for searching slices of integers, floating-point numbers, and strings, respectively.
  • For Objective-C, the Cocoa framework provides the NSArray -indexOfObject:inSortedRange:options:usingComparator: method in Mac OS X 10.6+. Apple's Core Foundation C framework also contains a CFArrayBSearchValues function.

Read more about this topic:  Binary Search Algorithm

Famous quotes containing the words language and/or support:

    To write or even speak English is not a science but an art. There are no reliable words.... Whoever writes English is involved in a struggle that never lets up even for a sentence. He is struggling against vagueness, against obscurity, against the lure of the decorative adjective, against the encroachment of Latin and Greek, and, above all, against the worn-out phrases and dead metaphors with which the language is cluttered up.
    George Orwell (1903–1950)

    But look what we have built ... low-income projects that become worse centers of delinquency, vandalism and general social hopelessness than the slums they were supposed to replace.... Cultural centers that are unable to support a good bookstore. Civic centers that are avoided by everyone but bums.... Promenades that go from no place to nowhere and have no promenaders. Expressways that eviscerate great cities. This is not the rebuilding of cities. This is the sacking of cities.
    Jane Jacobs (b. 1916)