Data Structures LightHall Class
Data Structures LightHall Class
Data Structures LightHall Class
Adora Nwodo
@adoranwodo
Heaps
Arrays
Hash Tables
Linked Lists
Graphs
Stacks
Matrices
Queues
Tries
Binary Trees
B-Trees
Binary Search Trees
N-ary Trees
@adoranwodo
Arrays
@adoranwodo
★ Arrays are zero indexed. This means that an array with n elements is
indexed from 0 to n-1.
★ An array has a fixed size. When creating an array, you specify the
number of elements the array has. That’s it’s size.
12 8 5 78
0 1 2 3
@adoranwodo
REAL LIFE USES OF ARRAYS
API RESPONSES
When we make an API request to fetch data, ife we are getting more than one record,
they will usually be returned as a JSON array.
When we get the valid JSON array as a response, we can perform whatever action we
want on the data.
/*
The example below shows looping through a valid API response
and printing out the data
*/
REPRESENTING MATRICES
Since 2 dimensional arrays are represented as rows & columns and matrices are also
represented as rows and columns, we can represent matrices as 2 dimensional arrays while
programming.
}
@adoranwodo
REAL LIFE USES OF ARRAYS
STORING DATA
Generally, arrays are used for storing all sorts of data ranging from data from a server, to data in
the applications memory and so on. Depending on what your apps logic is, you might need to
store a list of things at some point and arrays are one of the most common data structures that
exist for this scenario.
Linked Lists
@adoranwodo
❖ Data field: This field contains the data that is contained in the node. The
programmer can store whatever data they want here, based on what their
logic is.
❖ Reference field: This field contains the reference to the next (or previous)
node in the sequence depending on the type of linked list.
The differences in Linked Lists are based on the multiple types of references
possible:
In a Singly Linked List, you are only allowed to have a “Next” reference. What this
means is that you have one reference field that points to the next element in the
sequence.
45 10 200 NULL
In a Doubly Linked List, you are allowed to have two (double) references. One is a next reference
and the other, a previous reference. What this means is that you have two reference fields
where one points to the next element in the sequence and the other points to the previous
element
45 10 200 NULL
In a Circular Linked List, you are allowed to have two (double) references. One is a next
reference and the other, a previous reference. What this means is that you have two reference
fields where one points to the next element in the sequence and the other points to the previous
element
45 10 200
Hash Tables
@adoranwodo
What is Hashing?
Hashing is a technique to convert a range of key values into a range of
indexes of an array.
@adoranwodo
USE A HASHMAP
@adoranwodo
Stacks
@adoranwodo
@adoranwodo
@adoranwodo
@adoranwodo
@adoranwodo
@adoranwodo
Queues
@adoranwodo
Questions?