Data Structure PP T
Data Structure PP T
Data Structure PP T
◦ For example, we can store a list of items having the same data-type using the array data structure.
The representation of particular data structure in the main memory of a computer is called as storage structure.
The storage structure representation in auxiliary memory is called as file structure.
It is define as the way of storing and manipulating data in organized form so that it can be used efficiently
Data Structure mainly specifies the following four things:
1)organization of data 2)accessing method 3)degree of associativity 4) processing alternative for information
Algorithm + Data Structure = Program
Data Structure study Covers the following points
1) Amount of memory require to store
2) Amount of time require to process
3) Representation of data in memory
4) Operations performs on data
Types Of DS
The DS are divided into two types:
1) Primitive
2) Non primitive
Non primitive divided into two type
3) Linear DS
4) Non linear DS
DATA TYPES
A particular kind of data item, as defined by the values it can take, the Programming language
used, or the operations that can be performed on it.
◦ Primitive Data Structure
◦ Primitive Data Structure are basic structure and directly operated upon by machine instructions.
◦ Primitive data structures have different representations on different computers.
◦ Integers, floats, character and pointers are example of primitive data structures.
◦ These data types are available in most programming languages as built in type.
Integer: It is a data type which allows all values without fraction part. We can used it for whole numbers.
Float: It is a data type which is use for storing fraction numbers.
Character: It is a data type which is used for character values.
Pointer: A variable that hold memory address of another variable are called pointer.
Non Primitive Data Type
◦ These are more sophisticated data structures.
◦ These are derived from primitive data structure.
◦ The non – primitive data structures emphasize structuring of a group of homogeneous or heterogeneous data items.
◦ Example of non – primitive data types are Array, List, and File etc.
◦ A non – primitive data type is further divided into Linear and non – Linear data structure.
Array: An array is a fixed size sequenced collection of elements of the same data type.
List: An ordered set containing variable number of elements is called as List.
File: A file is a collection of logically related information. It can be viewed as a large list of records consisting of
various fields.
Linear Data Structures
A linear data structure simply means that it is a storage format of the data in
the memory in which the data are arranged in contiguous blocks of memory.
Example is the array of characters it represented by one character after
another.
In the linear data structure, member elements form a sequence in the storage.
There are two ways to represent a linear data structure in memory.
static memory allocation
dynamic memory allocation
The possible operations on the linear data structure are:
1) Traversing 2) Insertion 3) Deletion 4) searching 5) sorting
6) merging
◦ Example of Linear data structure are Stack and Queue
Stack
◦ Stack is a data structure in which insertion and deletion
operations are performed at one end only.
◦ The insertion operation is referred to as ‘PUSH’ and deletion
is referred as ‘POP’ operation
◦ Stack is also called as Last In First Out (LIFO) data structure.
Queue
◦ The data structure which permits the insertion at one and
deletion at another end, known as Queue.
◦ End at which deletion is occurs is known as FRONT end and
another end at which insertion occurs is known as REAR
end.
◦ Queue is also called as First In First Out (FIFO)
Non-Linear Data Structure
◦ Non linear DS are those data structure in which data items are not arranged
in a sequence.
◦ Example on Non Linear DS are Tree and Graph.
TREE
◦ A Tree can be define as finite data items (nodes) in which data items are
arranged in branches and sub branches
◦ Tree represent the hierarchical relationship between various elements
◦ Tree consist of nodes connected by edge, the represented by circle and edge
Components of Graph lives connecting to circle.
Graph
◦ Graph is collection of nodes (information) and connecting edges (Logical
relation) between nodes.
◦ A tree can be viewed as restricted graph
◦ Graph have many types: 1) Simple graph 2) Mixed graph 3) Multi graph 4)
Directed graph 5) Un-directed graph
Difference Between Linear and Non Linear Data Structure
◦ Every item is related to its previous and next ◦ Every item is attached with many other items.
item. ◦ Data is not arranged in sequence.
◦ Data is arranged in linear sequence.
◦ Data cannot be traversed in a single run.
◦ Data items can be traversed in a single run
◦ E.g. Tree, Graph
◦ E.g. Array, Stacks, Linked list, Queue
◦ Implementation is difficult.
◦ Implementation is easy.
Operation on Data Structures
Design of efficient data structure must take operations to be performed on the DS into account. The most commonly
used operations on DS are broadly categorized into following types
1. Create: This operation results in reserving memory for program elements. This can be done by declaration
statement Creation of DS may take place either during compile-time or run-time.
2. Destroy: This operation destroy memory space allocated for specified data structure .
3. Selection: This operation deals with accessing a particular data within a data structure.
4. Updation: It updates or modifies the data in the data structure.
5. Searching: It finds the presence of desired data item in the list of data items, it may also find locations of all
elements that satisfy certain conditions.
6. Sorting: This is a process of arranging all data items in a DS in particular order, for example either ascending order
or in descending order.
7. Splitting: It is a process of partitioning single list to multiple list.
8. Merging: It is a process of combining data items of two different sorted list into single sorted list.
9. Traversing: It is a process of visiting each and every node of a list in systematic manner.
What are Arrays?
Syntax
arrayName[indexNum]
Example
balance[1]
Here, we have accessed the second value of the array using its index, which is 1.
The output of this will be 200, which is basically the second value of the balance
array.
◦ Array Representation
◦ Arrays can be declared in various ways in different languages. For illustration, let's take C array declaration.