This tag is for questions about search algorithms, tools, and technologies.
Searching is one of the most common and important tasks in Computer Science.
The most basic search algorithm is a linear search (also called "sequential search"). Each item in a collection of data is examined in sequence until the sought item is found.
If the collection in question has already been sorted then a more efficient binary-search is possible.
Search can become more complex when, rather than finding one instance of a specific item, we want to find all items meeting a certain set of criteria. For instance a sql query can specify extremely complex search criteria, and much of relational database design involves the planning of an efficient way to perform those searches.