Arrays are fundamental data structures in programming, defined as collections of similar data items stored at contiguous memory locations. They offer efficient means of organizing and accessing data, where each element can be accessed using its index number.

Imagine you have grades for 5 classes. Instead of managing five separate containers, think of an array as a single box with five compartments, each designated for a grade. To locate a particular grade, you simply refer to its assigned code (index always starts from (0) zero) – no exhaustive searching required! Arrays streamline organization and access in computer programs, making tasks significantly more manageable and efficient.

Properties of Array

Representation of an array

Arrays can be represented differently in various programming languages. Let's look at how we declare an array in C language.

As per the above illustration, there are some of the following important points

Why arrays are used?

Array - Insertion Operation

Insertion operation refers to the action of adding one or more elements into an array. This operation offers flexibility as elements can be inserted at various positions within the array, including the beginning, end, or any specific index according to specific requirements. For example, if we want to add a new element into our array, we can choose where it goes: maybe at the start, the end, or somewhere in between. It all depends on what we need or where we want to add.

Code Example

#include<iostream>
using namespace std;

void insertAnElement(int arr[], int size, int data, int index) {
    int i;

    for(i = size - 2; i >= index; i--) {
        arr[i + 1] = arr[i];
    }

    arr[index] = data;
}

int main() {
    int size;
    cout << "Enter size of array :" << endl;
    cin >> size;

    int arr[size];
    cout << "Enter array elements :" << endl;
    for(int i = 0; i < size - 1; i++) {
        cin >> arr[i];
    }

    int data;
    cout << "Enter element to insert :" << endl;
    cin >> data;

    int index;
    cout << "Enter index to insert :" << endl;
    cin >> index;

    insertAnElement(arr, size, data, index);

    cout << "Printing array elements :" << endl;
    for(int i = 0; i < size; i++) {
        cout << arr[i] << " ";
    }

    return 0;
}

Output

Array - Deletion Operation

Array deletion is the process of removing an item from a particular spot in a list. It involves shifting all items after that spot to the left to fill the gap. This operation ensures that the list remains orderly and efficient. It's like taking a book out of a shelf and rearranging the books so there are no empty spaces. Array deletion is essential for managing data effectively in programming and helps maintain the integrity of the list. By understanding array deletion, programmers can build more efficient and organized software solutions.

Code Example

#include<iostream>
using namespace std;

void deleteAnElement(int arr[], int size, int index) {
    for(int i = index; i < size - 1; i++) {
        arr[i] = arr[i + 1];
    }
}

int main() {
    int size;
    cout << "Enter size of array :" << endl;
    cin >> size;

    int arr[size];
    cout << "Enter array elements :" << endl;
    for(int i = 0; i < size; i++) {
        cin >> arr[i];
    }

    int index;
    cout << "Enter index number to delete :" << endl;
    cin >> index;

    deleteAnElement(arr, size, index);

    cout << "Printing array after deletion :" << endl;
    for(int i = 0; i < size - 1; i++) {
        cout << arr[i] << " ";
    }

    return 0;
}

Output

Conclusion

Arrays are like organized boxes where we can store similar things in a neat row. Each item in the box has its number, starting from zero. This makes it super easy to find what we need without searching all over the place. Arrays are great for handling lots of stuff quickly and keeping things tidy in computer programs. We can add new things wherever we want in the array, just like putting books on a shelf or removing them neatly without leaving empty spaces. Arrays make it easier for computers to work with lots of information, helping us build better programs faster.