Linear Search Algorithm - Why allow a user to input a start and end index to LS?
Surely, it is not about correctness. It is only a slightly general version of linear search. This technique is not uncommon. Obviously the more general the procedure is, the more applicable it is.

Linear search is a little bit simple for an illustration. Let's look at quicksort@wiki that is declared as quicksort(A, lo, hi). This is because quicksort is a recursive procedure that needs to call itself over a sub-range of the array. Notice that quicksort also needs a partition procedure, which is declared as partition(A, lo, hi) instead of partition(A).

Another kind of examples is dynamic programming. Suppose that you want to compute the edit distance@wiki between two strings of $a$ and $b$, with lengths $m$ and $n$ respectively. What you are actually computing is $\text{Dist}(i,j)$ for $0 \le i \le m, 0 \le j \le n$.