Search⌘ K
AI Features

Traversal and Searching in an Array

Explore how to perform traversal and searching in arrays using C++. Understand the difference between linear and binary search, and learn when to apply each technique to sorted or unsorted arrays. Gain practical knowledge on implementing these methods and analyzing their time and space complexities.

At this point, the core array operations are established. Reading or updating a single element is only one aspect. Effective use of arrays also requires traversing them and locating elements. This lesson covers traversal and searching, which are fundamental operations in array-based problems.

Traversal (Iterate through the array)

Traversal means going through every element of an array, one at a time, from the first to the last. It is a commonly used operation and serves as the foundation for almost everything else: searching for a value, adding up a total, printing every element, or checking whether a condition is met.

How traversal works

To traverse an array, we use a loop that visits each element one at a time, from start to end. Think of it like reading through our scorecard from game 1 to the last game, one row at a time. We do not skip any entry and we do not jump ahead. We simply go through each one in order.

The most common way to traverse an array is with a range-based for loop, where the loop variable takes on the value of each element in sequence. This allows us to process every value one by one without manually managing indices.

C++
for (element_type element : array) {
// do something with element
}

Consider a scores array {88, 95, 70, 82, 91}. The following illustration shows how the loop visits each element one at a time from left to right:

C++ implementation

The following code shows how to traverse the scores array and print each element:

C++ 17
#include <iostream>
#include <vector>
int main() {
std::vector<int> scores = {88, 95, 70, 82, 91};
for (int score : scores) {
std::cout << score << std::endl;
}
return 0;
}
Traversing an array

The loop goes through the scorecard from game 1 to game 5, printing each score in the order it was recorded. Unlike access or update, which go straight to ...