Definition

An array is a data structure consisting of a collection of elements (values or variables), each identified by an array index or key. Arrays are a fundamental feature in most programming languages, providing a way to store multiple items of the same type together.

Common Uses in Competitive Programming

  1. Storing Multiple Values: Arrays store a list of elements, making data management and access easy.
  2. Dynamic Programming: Arrays store solutions to subproblems, optimizing the overall problem-solving process.
  3. Sorting and Searching: Arrays hold data for sorting algorithms (like quicksort, mergesort) and searching algorithms (like binary search).
  4. Graph Representation: Arrays (or array of arrays) can represent graphs using adjacency matrices or adjacency lists.

Techniques Using Arrays in Competitive Programming

  1. Two-Pointer Technique
  2. Sliding Window Technique
  3. Prefix Sum Technique
  4. Kadane’s Algorithm
  5. Sorting and Searching Techniques

Sorted Array

Two Pointer