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
andupper_bound
. - Java offers a set of overloaded
binarySearch
static methods in the classesArrays
andCollections
in the standardjava.util
package for performing binary searches on Java arrays and onList
s, respectively. They must be arrays of primitives, or the arrays or Lists must be of a type that implements theComparable
interface, or you must specify a customComparator
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 methodBinarySearch
(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 functionsSearch
,SearchInts
,SearchFloat64s
, andSearchStrings
, 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:
“My God! The English language is a form of communication! Conversation isnt just crossfire where you shoot and get shot at! Where youve got to duck for your life and aim to kill! Words arent only bombs and bulletsno, theyre little gifts, containing meanings!”
—Philip Roth (b. 1933)
“... the outcome of the Clarence Thomas hearings and his subsequent appointment to the Supreme Court shows how misguided, narrow notions of racial solidarity that suppress dissent and critique can lead black folks to support individuals who will not protect their rights.”
—bell hooks (b. c. 1955)