Peter Cao

Milo Chang

One of the main applications of ArrayLists is to **search**, that is to see if an element is actually in an ArrayList and to return its index if it is.

The simplest searching algorithm, and the only one we will learn in this unit, is **linear/sequential search**. This algorithm goes through the list element by element (thus the names sequential and linear) until the element is found. If the element is not found, -1 is returned.

Here is its implementation for an ArrayList:

```
public static int linearSearch(ArrayList<Integer> array, int n) {
for (int i = 0; i < array.size(); i++) {
if (array.get(i) == n) {
return i;
}
}
return -1;
}
```

Here is the implementation for a regular integer array:

```
public static int linearSearch(int[] array, int n) {
for (int i = 0; i < array.length; i++) {
if (array[i] == n) {
return i;
}
}
return -1;
}
```

There are other searching algorithms, but the only other important one to know is **binary search** covered in Unit 10.

Browse Study Guides By Unit

βUnit 1 β Primitive Types

π±Unit 2 β Using Objects

π₯Unit 3 β Boolean Expressions & if Statements

πΉUnit 4 β Iteration

βοΈUnit 5 β Writing Classes

βοΈUnit 6 β Array

πΎUnit 7 β ArrayList

π»Unit 8 β 2D Array

π²Unit 9 β Inheritance

π±Unit 10 β Recursion

πExam Reviews

Β© 2023 Fiveable Inc. All rights reserved.