Module 1: Introduction to Data Structures and Algorithm
Two Operations in Queue
Enqueue and Dequeue
Merging
combining two similar data structures into one
Time Complexity
computing time
Properties of Linked Lists
dynamic length, arbitrary memory locations, access by following links, insert/delete
Non-Linear Data Structure
elements does not form a sequence or a linear list.
Linear Data Structure
elements form a sequence or a linear list
Properties of Arrays
fixed length, contiguous memory locations, direct access, insert/delete
Properties of Stacks
insertion/deletion can be done only at the top, LIFO
Analysis of Algorithm
the most important factor is to calculate resources needed for running the algorithm; time complexity and space complexity
Traversal
travel through the data structure
Insertion
Adding new elements to the data structure
Data Structure
a particular way of storing and organizing data in a computer so that it can be used efficiently; physical implementation of abstract data type
Algorithm
a well-ordered collection of unambiguous and effectively computable operations that, when executed, produces a result and halts in a finite amount of time
The Core Operations of Abstract Data Types
add an item, remove an item, find, retrieve, or access an item; is the collection empty, make the collection empty, give me a subset of the collection
Sorting
arranging the elements in some type of order
Properties of Queues
insertion/enqueue from the rear, and deletion/dequeue from the front, First In First Out
Arrays
linear data structure; a sequence of n items of the same data type that are stored contiguously in computer memory and made accessible by specifying a value of the array's index
Linked List
linear data structure; a sequence of zero or more nodes each containing two kinds of information: some data and one or more links called pointers to other nodes of the linked list
Queues
linear data structure; collection with access only to the term that has been present the longest; uses first in first out
Stacks
linear data structure; uses last in first out (LIFO) ordering and allows reading and writing on the top element only
Representations of Algorithm
natural languages, pseudo code, flowcharts, programming languages
Trees
non-linear data structure; a way of representing the hierarchical nature of a structure in a graphical form
Graphs
non-linear data structure; consists of an interconnected set of data items
Two operations in Stacks
push and pop
Deletion
removing an element from the data structure
Properties of Nodes
root nodes, child nodes, parent nodes, leave nodes
Space Complexity
storage requirements
Abstract Data Types
stores data and allow various operations on the data to access and change it; mathematical model, together with various operations defined on the model; supports abstraction, encapsulation, and information hiding
Search
traversal through the data structure for a given element