Computer Science

Arrays

Arrays are a data structure used to store a collection of elements of the same data type. They are commonly used in programming to store and manipulate large amounts of data efficiently. Arrays are accessed using an index, which starts at 0 for the first element.

Written by Perlego with AI-assistance

11 Key excerpts on "Arrays"

  • Data Structures and Program Design Using Java
    eBook - ePub
    3

    ARRAYS

    3.1  Introduction

    In the previous chapter we studied the basics of programming in data structures and Java in which we aimed to design good programs, where a good program refers to a program which runs correctly and efficiently by occupying less space in the memory, and also takes less time to run and execute. Undoubtedly, a program is said to be efficient when it executes with less memory space and also in minimal time. In this chapter, we will learn about the concept of Arrays. An array is a user-defined data type that stores related information together. Arrays are discussed in detail in the following sections.

    3.2  Definition of an Array

    An array is a collection of homogeneous (similar) types of data elements in contiguous memory. An array is a linear data structure, because all elements of the array are stored in linear order. Let us take an example in which we have ten students in a class, and we have been asked to store the marks of all ten students; then we need a data structure known as an array.
    Figure 3.1. Representation of an array of ten elements.
    In the previous example, the data elements are stored in the successive memory locations and are identified by an index number (also known as the subscript), that is, Ai or A[i]. A subscript is an ordinal number which is used to identify an element of the array. The elements of an array have the same data type, and each element in an array can be accessed using the same name.
     

    Frequently Asked Questions

    1. What is an array? How can we identify an element in the array?
    Ans: An array is a collection of homogeneous (similar) types of data elements in contiguous memory. An element in an array can be identified by its index number, which is also known as a subscript.

    3.3  Array Declaration

    We know that all variables must be declared before they are used in the program. Therefore, the same concept also holds with array variables. An array must be declared before it is used. During the declaration of an array, the size of the array has to be specified. Declaring an array involves the following specifications:
  • Data Structures and Program Design Using C++
    3

    Arrays

    In This Chapter
    Introduction
    Definition of an array
    Array declaration
    Array initialization
    Calculating the address of array elements
    Analyzing an algorithm
    Abstract data types
    Declaration of two-dimensional Arrays
    Operations on 2-D Arrays
    Multidimensional Arrays/ N-dimensional arrayys
    Calculating the address of 3-D Arrays
    Arrays and pointers
    Array of pointers
    Arrays and their applications
    Sparse matrices
    Types of sparse matrices
    Representation of sparse matrices
    Summary
    Exercises

    3.1Introduction

    We have already studied the basics of programming in data structures and C++ in the previous chapter in which we aimed to design good programs, where a good program refers to a program which runs correctly and efficiently by occupying less space in the memory, and also takes less time to run and execute. Undoubtedly, a program is said to be efficient when it executes with less memory space and also in minimal time. In this chapter, we will learn about the concept of Arrays. An array is a user-defined data type that stores related information together. Arrays are discussed in detail in the following sections.

    3.2Definition of an Array

    An array is a collection of homogeneous (similar) types of data elements in contiguous memory . An array is a linear data structure because all elements of the array are stored in linear order. Let us take an example in which we have ten students in a class, and we have been asked to store the marks of all ten students; then we need a data structure known as an array.
    FIGURE 3.1 .
    Representation of an array of 10 elements.
    In the previous example, the data elements are stored in the successive memory locations and are identified by an index number (also known as the subscript), that is, Ai or A[i]. A subscript is an ordinal number which is used to identify an element of the array
  • Composite Data Structures and Modularization
    eBook - ePub

    Composite Data Structures and Modularization

    Volume 2: Composite Data Structures and Modularization

    • Xingni Zhou, Qiguang Miao, Lei Feng(Authors)
    • 2020(Publication Date)
    • De Gruyter
      (Publisher)
    We can use a for loop to process grades for a single student and use another one to calculate average grades for all of them. The algorithm and code implementation will be given in the section of two-dimensional Arrays.

    1.1.2  Representation of data of the same type

    The discussion earlier showed that a new mechanism is necessary to handle data of the same type. With respect to data representation and processing, Arrays are a data structure that regularly expresses data so that they are processed regularly.
    Since Arrays are collections of variables whose names have a pattern, they are supposed to have features of variables. Figure 1.6 compares Arrays with plain variables.
    Figure 1.6: Comparison of a group of variables with a single variable.
    During the definition of a plain variable, the system allocates memory according to its type specified by programmers. The definition of an array consists of type, name and, in particular, the number of variables in the array.
    There are multiple variable values in an array, so they should be stored in multiple storage units, whose sizes depend on types of the variables. The size of a storage unit is measured in bytes and can be computed using the sizeof operator.
    Besides, a referencing method of the address of a storage unit is necessary so that programmers can inspect the unit. We can infer from the examples earlier that the referencing method of variable values in an array is to use the array name with an index. Moreover, we should be able to initialize an array since we can do the same with plain variables. Hence, a corresponding syntax is necessary.

    1.2  Storage of Arrays

    There are four issues related to array storage, namely definition, initialization, memory allocation, and memory inspection.

    1.2.1  Definition of Arrays

    1.2.1.1  Definition of Arrays
    An array is a collection of data of the same type. Figure 1.7
  • C Programming
    eBook - ePub

    C Programming

    Learn to Code

    10 Arrays and Strings
    DOI: 10.1201/9781003188254-10

    10.1 Introduction

    Many times, we come across a situation where we use a set of data rather than a single datum. For example, assume that you are an instructor and you teach C programming. You want to store the marks of your students and later perform different types of operations on them, such as finding the top performer or knowing how many students secure less than 50 marks. In that case usage of a single variable is not enough: you need multiple variables to store the data of your students. Again, if you use many variables in your program then remembering those variable names will become difficult. So, the solution is the array – a concept provided by C that handles large numbers of items simultaneously.
    In our day-to-day life we also came across situations where we need to group items and keep them in a sequential manner for easy access. For example, Figure 10.1 shows a toy train built to store painting items such as watercolors, sketch pens, brushes, pencils, and oil pastels. We name this train the Painter’s Train. We number the boxes from 1 to 5 and store many items in them. The concept of arranging similar data and calling them using a common name is sometimes known as an array of items.
    Figure 10.1 Introducing the concept of an array.
    An array is a series of elements of the same type, placed in contiguous memory locations that can be individually referenced by adding an index number to each location. Other definitions are:
    • An array is a single programming variable with multiple "compartments." Each compartment can hold a value.
    • A collection of data items, all of the same type, in which the position of each item is uniquely designated by a discrete type.
    This chapter is dedicated to a discussion of Arrays. After completion of this chapter, readers will have learnt the following:
  • Programming Essentials Using Java
    eBook - ePub

    Programming Essentials Using Java

    A Game Application Approach

    Chapter 4 for inserting and deleting items stored in a disk text file. We will also explore the API methods that implement many of the classical array processing algorithms.
    One-dimensional Arrays, which can be used to store a list of items, will be discussed as well as multi-dimensional Arrays, and we will use two-dimensional Arrays to organize data in tables as rows and columns.
    After successfully completing this chapter you should: •  Understand the advantages and importance of using Arrays •  Be familiar with the Java memory model used to store Arrays •  Be able to construct and use Arrays of primitives and objects •  Understand and be able to implement the algorithms used to search an array, sort it, and find the minimum and maximum values stored in it •  Be familiar with and be able to use the array-processing methods in the API •  Understand the concept of parallel Arrays and use them to process data sets •  Know how to use Arrays to insert, delete, or update data items stored in a disk file •  Be able to apply array techniques to game programs
    6.1   THE ORIGIN OF Arrays
    The machines we call computers received their name because the first operational versions of these machines were primarily used by mathematicians to perform rapid computations on large data sets. They were machines whose task was to compute; they were computers. However, long before computers were operational, mathematicians were using subscripted variables, such as x2 or x4
  • Programming Fundamentals Using JAVA
    eBook - ePub

    Programming Fundamentals Using JAVA

    A Game Application Approach

    In this chapter, we will introduce the concept of an array and the powerful features of the construct that make it a part of most programs. These features include the ability to store and retrieve large data sets, and, when combined with the concept of a loop, these data sets can be processed with only a few instructions. Array processing algorithms such as sorting, searching, and copying will be discussed and implemented, as will algorithms introduced in Chapter 4 for inserting and deleting items stored in a disk text file. We will also explore the API methods that implement many of the classical array processing algorithms.
    One-dimensional Arrays, which can be used to store a list of items, will be discussed as well as multi-dimensional Arrays, and we will use two-dimensional Arrays to organize data in tables as rows and columns.
    After successfully completing this chapter you should:
    Understand the advantages and importance of using Arrays
    Be familiar with the Java memory model used to store Arrays
    Be able to construct and use Arrays of primitives and objects
    Understand and be able to implement the algorithms used to search an array, sort it, and find the minimum and maximum values stored in it
    Be familiar with and be able to use the array-processing methods in the API
    Understand the concept of parallel Arrays and use them to process data sets
    Know how to use Arrays to insert, delete, or update data items stored in a disk file
    Be able to apply array techniques to game programs
    6.1 THE ORIGIN OF Arrays
    The machines we call computers received their name because the first operational versions of these machines were primarily used by mathematicians to perform rapid computations on large data sets. They were machines whose task was to compute; they were computers. However, long before computers were operational, mathematicians were using subscripted variables, such as x2 or x4
  • Learn C Programming
    Chapter 11 : Working with Arrays
    We have already seen how a structure is a grouping of one or more components that can each be of different data types. Often, we need a grouping that consists of the same type; this is called an array . An array is a collection of multiple occurrences of the same data type grouped together under a single name. Each element of the array is accessed via its base name and an offset of that base. Arrays have many uses, from organizing homogenous data types to providing the basis for strings, or Arrays of characters.
    Before we can learn about some of the wide uses of Arrays, we need to explore the basics of declaring and manipulating Arrays. The following topics will be covered in this chapter:
    • Declaring an array of values
    • Initializing an array in several ways
    • Understanding variable-length Arrays
    • Accessing each element of an array
    • Understanding zero-based array indexing
    • Assigning and manipulating elements of an array
    • Using looping statements to access all elements of an array
    • Using array references as function parameters

    Technical requirements

    Continue to use the tools chosen from the Technical requirements section of Chapter 1 , Running Hello, World! .
    The source code for this chapter can be found at https://github.com/PacktPublishing/Learn-C-Programming-Second-Edition/tree/main/Chapter11 .

    Declaring and initializing Arrays

    An array is a collection of two or more values, all of which have the same type and share a single common base name. It makes no sense to have an array of just one value; that would simply be a variable. An array definition has the following syntax: dataType arrayIdentifier[ numberOfElements ]; Here, dataType is any intrinsic or custom type, arrayIdentifier is the base name of the array, and numberOfElements specifies how many values of dataType are in the array. numberOfElements , for whatever type and values are given, is a literal constant or expression that will be converted to an integer. Most commonly, numberOfElements is an integer constant expression. An array whose size is defined by a constant expression we call a constant-length array
  • Learn C Programming from Scratch
    eBook - ePub

    Learn C Programming from Scratch

    A step-by-step methodology with problem solving approach (English Edition)

    , which starts from 0. We use index notation to assign values to or access values of individual elements of an array.
    Declaring and initializing Arrays Let us talk about declaring and initializing Arrays in detail, along with examples. Declaring Arrays In C programming, array is created by stating the type of each member, followed by the name and size of the array. The size of the array is specified in square brackets: data_type array_name [array_size] Where:
    • array_name is the name given to the array (Elements).
    • array_size must be an integer value greater than zero, and
    • data_type can be any valid data type defined in C.
    For instance: int num [10];
    It will define an integer array with the name num and 10 members. Arrays can also be initialized at declaration, in which case a specified value is given to each element.
    For example, the statement: int num [10] = {10, 20, 30, 40, 50, 60,70,80,90,100};
    It initializes the num array with the integer values 10, 20, 30, 40, 50, 60, 70, 80, 90 , and 100 .
    double b [5] = {10.0, 2.60, 3.45, 7.0, 50.50};
    Here b is a one-dimensional array that stores up to 5 double numbers.
    Initializing Arrays
    In C, we may initialize Arrays at the time of declaration by either giving the array size and individual values for each element or by using a list of values contained in curly brackets. Here are a few instances:
  • C Programming
    eBook - ePub

    C Programming

    A Self-Teaching Introduction

    CHAPTER 3

    ARRAYS AND POINTERS

    3.0 INTRODUCTION

    S ay we wish to store the marks of 3000 students at our college; if I use variables, more than 3000 variables are required. This is very tedious and cumbersome. So to solve this type of problem, we use an array that has a common name with a subscript representing the index of each element. Thus, an array is an ordered sequence of finite data items of the same data type that share a common name. The common name is the array name and each individual data item is known as an element of the array.
    An array is defined as a set of a similar type of elements that are stored contiguously in memory. This means that the elements of an array are stored in the subsequent memory locations starting from the first memory location of the block of memory created for the array.
    Each element of an array can be referred to by an array name and a subscript or an index. Please note that all elements of an array should be of similar type. Arrays can have one of more dimensions—one-dimensional (1D), two-dimensional (2D), or multidimensional. A one-dimensional array uses a single index and a
    two-dimensional array uses two indexes, and so on. A 1D array can be used to represent a list of data items and is also known as a vector or a list. Similarly, a 2D array can be used to represent a table of data items consisting of rows and columns. It is also known as a matrix. A 3D array can be used to represent a collection of tables. The concept can go beyond three dimensions also.
    The dimension of the array is known as its rank. For instance, a 1D array has rank 1, a 2D array has a rank of 2, and so on. The number of subscripts is determined by the rank of an array. The
    size or length of each dimension is represented by an integral value greater than or equal to 0. The total number of elements in an array is the product of the sizes of each dimension in an array. If any one or more of the dimensions of an array have size 0, the array is known as an empty array.
    An array may be regular or ragged. A ragged/jagged array
  • C
    eBook - ePub

    C

    From Theory to Practice, Second Edition

    • George S. Tselikis, Nikolaos D. Tselikas(Authors)
    • 2017(Publication Date)
    • CRC Press
      (Publisher)
    7 Arrays
    The variables we’ve used so far can store a single value. In this chapter, we’ll talk about a new type of variable capable of storing a number of values. This type is called array. An array may be multidimensional. We’ll focus on the simplest and most usual kinds: the one-dimensional and two-dimensional Arrays. To introduce you to Arrays, we’ll show you how to use Arrays of integers and floating-point numbers. We’ll discuss other types of Arrays, as well as their close relationship to pointers in later chapters. In Chapter 12 , we’ll describe some popular algorithms for searching a value in an array and sorting its elements.

    One-Dimensional Arrays

    An array is a data structure that contains a number of values, or else elements, of the same type. Each element can be accessed by its position within the array.

    Declaring Arrays

    To declare a one-dimensional array, we must specify its name, the number of its elements, and its data type, like this:
    data_type array_name[number_of_elements];
    The number_of_elements , or else the length of the array, is specified by an integer constant expression greater than 0 enclosed in brackets. A popular error is to use a variable whose value is set during the program execution. No, it is not allowed. All the elements are of the same type; it may be of any type (e.g.,
    int
    ,
    float
    ,
    char
    , …). For example, the statement:
    int arr[1000];
    declares the array arr with 1000 elements of type int . To realize the importance of Arrays, imagine that if C didn’t support this type of aggregate variable, we’d have to declare 1000 different integer variables.
    The length of an array cannot change during the program execution. It remains fixed.
    If the length of the array is used several times in the program, a good practice is to use a macro instead. If you ever need to change it, you just change the macro. For example:
    #define SIZE 150 float
  • Anyone Can Code
    eBook - ePub

    Anyone Can Code

    The Art and Science of Logical Creativity

    This means that our program will be much longer and harder to write or read. A typical database program, for example, may include hundreds and thousands of numbers that need to be entered and processed. A simple loop can do that in a few lines. But with different names, these lines have to be repeated multiple times, instead of using a loop.
    There is a second problem that is probably less obvious but can be equally challenging to deal with and that is naming. When dealing with a large number of data, it is difficult to name them individually.1 As our example shows, all these data items are performing a similar task, and numbering is probably a better approach than naming. This is the inspiration for the concept of Arrays.
    An array is a single data item since it is defined once and with one name, but it also represents multiple data items since it consists of more than one element. It is a module of data aimed at grouping a set of data items that are related and have a similar type and role in the program. In our previous example, the grade variables are integer numbers representing student grades, and they are all treated the same way by the program (entered by the user and added to a sum variable).
    In C/C++, an array is defined using the [ ] pair after the name of a variable that holds the number of data items that are grouped together as a module and represented by that variable: int grades[10];
    The definition follows the standard for all variables: a type followed by a name. While the definition of a single variable ends there (int number; ), the array has the part that defines the size. Just like single variables that can be initialized right away (int number =0; ), we can initialize an array immediately:
    int grades[] = {100, 90, 83}; //array of three members int numbers[5] = {100, 90, 83}; //5 members. The last 2 are zero
    Accessing the array has to be by referencing a particular member which is done through an index value :
    grades[0] = 100; grades[1] = 95; grades[2] = 0;
    The index values are placed inside the [ ]. Note that the first member of the array is at index 0, and the index value for the last member is the array size minus one. Instead of a constant number, we can use any variable or operation for an index, as long as they have a value which is an integer greater than or equal zero and less than the array size:
Index pages curate the most relevant extracts from our library of academic textbooks. They’ve been created using an in-house natural language model (NLM), each adding context and meaning to key research topics.