In the world of computer science, the linear search algorithm, also known as sequential search or simple search, holds a significant position. As one of the most fundamental search algorithms, it allows us to locate an item within a data structure, such as an array, by examining each element until a match is found.
The implementation of the linear search algorithm is remarkably straightforward:
const linearSearch = (list, item) => {
for (const [i, element] of list.entries()) {
if (element === item) {
return i
}
}
}
By utilizing this code, we are able to retrieve the index of a desired item. For instance, consider the following example:
linearSearch(['a', 'b', 'c', 'd'], 'd') //3 (index starts at 0)
As illustrated, searching for ‘a’ only requires examining the first element, resulting in a swift operation. Conversely, searching for the last element necessitates iterating through every element of the array. When calculating the algorithm’s complexity, it is crucial to consider the worst-case scenario.
As a result, the algorithm complexity, often assessed with Big O notation, is denoted as O(n)
.