0% found this document useful (0 votes)
121 views12 pages

Goodrich 6e Ch03 Arrays PDF

Uploaded by

Arjun Singh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
121 views12 pages

Goodrich 6e Ch03 Arrays PDF

Uploaded by

Arjun Singh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12

Presentation for use with the textbook Data Structures and

Algorithms in Java, 6th edition, by M. T. Goodrich, R. Tamassia,


and M. H. Goldwasser, Wiley, 2014

Arrays

2014 Goodrich, Tamassia, Goldwasser

Arrays

Array Definition
q

An array is a sequenced collection of


variables all of the same type. Each variable,
or cell, in an array has an index, which
uniquely refers to the value stored in that
cell. The cells of an array, A, are numbered
0, 1, 2, and so on.
Each value stored in an array is often called
an element of that array.
A
0 1 2

2014 Goodrich, Tamassia, Goldwasser

i
Arrays

Array Length and Capacity


q

Since the length of an array determines the


maximum number of things that can be stored in
the array, we will sometimes refer to the length of
an array as its capacity.
In Java, the length of an array named a can be
accessed using the syntax a.length. Thus, the cells
of an array, a, are numbered 0, 1, 2, and so on, up
through a.length1, and the cell with index k can
be accessed with syntax a[k].
a
0 1 2

2014 Goodrich, Tamassia, Goldwasser

k
Arrays

Declaring Arrays (first way)


q

The first way to create an array is to use an


assignment to a literal form when initially declaring the
array, using a syntax as:

The elementType can be any Java base type or class


name, and arrayName can be any valid Java identifier.
The initial values must be of the same type as the
array.

2014 Goodrich, Tamassia, Goldwasser

Arrays

Declaring Arrays (second way)


q

The second way to create an array is to use


the new operator.
n

However, because an array is not an instance of a


class, we do not use a typical constructor. Instead
we use the syntax:

new elementType[length]
length is a positive integer denoting the length
of the new array.
The new operator returns a reference to the
new array, and typically this would be
assigned to an array variable.

2014 Goodrich, Tamassia, Goldwasser

Arrays

Arrays of Characters or
Object References
q

An array can store primitive elements, such as


characters.

An array can also store references to objects.

2014 Goodrich, Tamassia, Goldwasser

Arrays

Java Example: Game Entries


q

A game entry stores the name of a player and her best score so far in a game

2014 Goodrich, Tamassia, Goldwasser

Arrays

Java Example: Scoreboard


q

Keep track of players and their best scores in an array, board


n

The elements of board are objects of class GameEntry

Array board is sorted by score

2014 Goodrich, Tamassia, Goldwasser

Arrays

Adding an Entry
q

To add an entry e into array board at index i, we


need to make room for it by shifting forward the
n - i entries board[i], , board[n 1]
board
0 1 2

0 1 2

0 1 2

e
i

board
board

2014 Goodrich, Tamassia, Goldwasser

Arrays

Java Example

2014 Goodrich, Tamassia, Goldwasser

Arrays

10

Removing an Entry
q

To remove the entry e at index i, we need to fill the hole


left by e by shifting backward the n - i - 1 elements
board[i + 1], , board[n 1]
board
0 1 2

e
i

0 1 2

0 1 2

board
board

2014 Goodrich, Tamassia, Goldwasser

Arrays

n
11

Java Example

2014 Goodrich, Tamassia, Goldwasser

Arrays

12

You might also like