Sum of Elements at Even Indices in an Array
Problem Statement
Given an array of integers, find the sum of elements present at even indices.
Important:
Even indices mean index positions, not even values.
Array indexing starts from 0.
Understanding Even Indices
In an array:
- Index 0 → even
- Index 1 → odd
- Index 2 → even
- Index 3 → odd
- and so on…
So, elements at indices 0, 2, 4, 6, ... are considered.
Example
Input
Array: [10, 20, 30, 40, 50]
Indices
Index: 0 1 2 3 4
Element:10 20 30 40 50
Elements at Even Indices
Index 0 → 10
Index 2 → 30
Index 4 → 50
Output
Sum = 10 + 30 + 50 = 90
Why This Problem Is Important
This problem helps you understand:
- Index-based traversal
- Conditional logic inside loops
- Difference between value-based and index-based operations
- Foundation for advanced problems like prefix sums and range queries
Approach / Logic
- Initialize a variable sum = 0
- Traverse the array from index 0 to n-1
- Check if the index is even (i % 2 == 0)
- If yes, add array[i] to sum
- After traversal, print the sum
Algorithm (Step-by-Step)
- Start
- Read array and its size
- Initialize sum = 0
- Loop from i = 0 to n - 1
- If i % 2 == 0
- Add arr[i] to sum
- Print sum
- End
Pseudocode
sum = 0
for i = 0 to n-1:
if i % 2 == 0:
sum = sum + arr[i]
print sum
Dry Run
Array = [4, 7, 1, 9, 2]
i = 0 → even → sum = 4
i = 1 → odd → skip
i = 2 → even → sum = 4 + 1 = 5
i = 3 → odd → skip
i = 4 → even → sum = 5 + 2 = 7
Final Sum = 7
Time and Space Complexity
| Metric | Value |
|---|---|
| Time Complexity | O(n) |
| Space Complexity | O(1) |
Only a single traversal is required, and no extra memory is used.
Language-wise Implementation
C Implementation
#include
int main() {
int arr[] = {10, 20, 30, 40, 50};
int n = sizeof(arr) / sizeof(arr[0]);
int sum = 0;
for(int i = 0; i < n; i++) {
if(i % 2 == 0) {
sum += arr[i];
}
}
printf("Sum of elements at even indices: %d", sum);
return 0;
}
Output
Sum of elements at even indices: 90
C++ Implementation
#include
using namespace std;
int main() {
int arr[] = {10, 20, 30, 40, 50};
int n = sizeof(arr) / sizeof(arr[0]);
int sum = 0;
for(int i = 0; i < n; i++) {
if(i % 2 == 0) {
sum += arr[i];
}
}
cout << "Sum of elements at even indices: " << sum;
return 0;
}
Output
Sum of elements at even indices: 90
Java Implementation
public class Main {
public static void main(String[] args) {
int[] arr = {10, 20, 30, 40, 50};
int sum = 0;
for(int i = 0; i < arr.length; i++) {
if(i % 2 == 0) {
sum += arr[i];
}
}
System.out.println("Sum of elements at even indices: " + sum);
}
}
Output
Sum of elements at even indices: 90
Python Implementation
arr = [10, 20, 30, 40, 50]
sum_even_index = 0
for i in range(len(arr)):
if i % 2 == 0:
sum_even_index += arr[i]
print("Sum of elements at even indices:", sum_even_index)
Output
Sum of elements at even indices: 90
C# Implementation
using System;
class Program {
static void Main() {
int[] arr = {10, 20, 30, 40, 50};
int sum = 0;
for(int i = 0; i < arr.Length; i++) {
if(i % 2 == 0) {
sum += arr[i];
}
}
Console.WriteLine("Sum of elements at even indices: " + sum);
}
}
Output
Sum of elements at even indices: 90
JavaScript Implementation
let arr = [10, 20, 30, 40, 50];
let sum = 0;
for (let i = 0; i < arr.length; i++) {
if (i % 2 === 0) {
sum += arr[i];
}
}
console.log("Sum of elements at even indices:", sum);
Output
Sum of elements at even indices: 90
Common Mistakes to Avoid
- Confusing even indices with even numbers
- Starting indexing from 1 instead of 0
- Skipping index 0
- Using unnecessary extra arrays
Interview Variations
- Sum of elements at odd indices
- Sum of even-index elements greater than a given value
- Separate sums of even and odd indices
- Prefix sum of even indices
Detailed Summary
The problem of finding the sum of elements at even indices focuses on index-based traversal rather than value-based filtering. By iterating through the array and selectively adding elements whose indices satisfy a condition, we reinforce a critical concept used throughout array manipulation and algorithm design. This problem builds a strong foundation for understanding indexed access, loop control, and conditional logic, which are essential for more advanced array techniques such as sliding window, prefix sum, and hashing-based optimizations.
Next Problem in the Series
Sum of Elements at Odd Indices
