**What is Data Structure:**

## Data Structures training in vizag

A data structure is a storage that is used to store and organize data. It is a way of arranging data on a computer so that it can be accessed and updated efficiently.

A data structure is not only used for organizing the data. It is also used for processing, retrieving, and storing data. There are different basic and advanced types of data structures that are used in almost every program or software system that has been developed. So we must have good knowledge about data structures.

## Data Structures training in vizag

Classification of Data Structure:

**Introduction to Data Structures:**

- What is Data Structure: Types, Classifications and Applications
- Introduction to Data Structures
- Common operations on various Data Structures

**Popular types of Data Structures:**

- Array
- Linked List
- Stack
- Queue

- Binary Tree
- Binary Search Tree
- Heap
- Hashing

- Graph
- Matrix
- Misc
- Advanced Data Structure

**Overview:**

- Introduction to Linear Data Structures
- Introduction to Hierarchical Data Structure
- Overview of Data Structures | Set 3 (Graph, Trie, Segment Tree and Suffix Tree)
- Abstract Data Types

#### Data Structures training in vizag

# Array Data Structure

## What is Array?

An array is a collection of items stored at contiguous memory locations. The idea is to store multiple items of the same type together. This makes it easier to calculate the position of each element by simply adding an offset to a base value, i.e., the memory location of the first element of the array (generally denoted by the name of the array).

Array Introduction:

- What is Array
- Introduction to Arrays – Data Structure and Algorithm Tutorials
- Applications, Advantages and Disadvantages of Array

**Introduction of Array in Different language:**

## What is String?

Strings are defined as an array of characters. The difference between a character array and a string is the string is terminated with a special character ‘\0’.

Below are some examples of strings:

“geeks”, “for”, “geeks”, “GeeksforGeeks”, “Geeks for Geeks”, “123Geeks”, “@123 Geeks”

In C, a string can be referred to either using a character pointer or as a character array. When strings are declared as character arrays, they are stored like other types of arrays in C. For example, if str[] is an auto variable then the string is stored in the stack segment, if it’s a global or static variable then stored in the data segment, etc.

## Linked List Data Structure

## What is Linked List

A linked list is a linear data structure, in which the elements are not stored at contiguous memory locations. The elements in a linked list are linked using pointers as shown in the below image

## Stack Data Structure

## What is Stack?

Stack is a linear data structure that follows a particular order in which the operations are performed. The order may be LIFO(Last In First Out) or FILO(First In Last Out). LIFO implies that the element that is inserted last, comes out first and FILO implies that the element that is inserted first, comes out last.

## Queue Data Structure

What is Queue Data Structure?A

Queueis defined as a linear data structure that is open at both ends and the operations are performed in First In First Out (FIFO) order.We define a queue to be a list in which all additions to the list are made at one end, and all deletions from the list are made at the other end. The element which is first pushed into the order, the operation is first performed on that.

# Introduction to Tree – Data Structure and Algorithm Tutorials

A **tree data structure** is a hierarchical structure that is used to represent and organize data in a way that is easy to navigate and search. It is a collection of nodes that are connected by edges and has a hierarchical relationship between the nodes.

The topmost node of the tree is called the root, and the nodes below it are called the child nodes. Each node can have multiple child nodes, and these child nodes can also have their own child nodes, forming a recursive structure.

# Tree Traversal Techniques – Data Structure and Algorithm Tutorials

A Tree Data Structure can be traversed in following ways:

- Depth First Search or DFS

- Inorder Traversal
- Preorder Traversal
- Postorder Traversal
- Level Order Traversal or Breadth First Search or BFS
- Boundary Traversal
- Diagonal Traversal
## Applications of tree data structure

What is Tree Data Structure?A tree is a type of data structure that represents a hierarchical relationship between data elements, called nodes. The top node in the tree is called the root, and the elements below the root are called child nodes. Each child node may have one or more child nodes of its own, forming a branching structure. The nodes at the bottom of the tree, which do not have any child nodes, are called leaf nodes.

A tree is a non-linear data structure, meaning that elements are not stored in a linear sequence like in an array or a linked list. Instead, elements are organized in a hierarchical structure, with each element having a parent-child relationship with other elements.JNNC Technologies

A tree can be represented in many ways, such as in an array or a linked list, but the most common representation is a graphical one, where each node is represented as a circle and each edge is represented as a line connecting two circles.

## Applications, Advantages and Disadvantages of Tree

Treeis a non-linear data structure. It consists of nodes and edges. A tree represents data in a hierarchical organization. It is a special type of connected graph without any cycle or circuit.

Tree Terminologies:

Node:Node is the main component of a tree that stores the data along with the links to other nodes.Edge:Edge( also called branch) connects two nodes of a tree. A node can have more than one edge.Parent:Parent node is a predecessor to any other node. In simple words, it is a node in the tree that has branches to other nodes.Child:The node which is connected below to another node is called a child of that node. All nodes except therootnode are child nodes.Root:The first node of the tree which originates it is called the root of the tree. A tree can have only one root.Leaf node(External node):Nodes with no child are called leaf nodes or external nodes.Internal node(Non-Leaf node):Nodes with at least one child is called an internal node or non-leaf nodes.Siblings:Nodes having the same parent are called siblings.Cousins:The nodes belonging to the same level with different parent nodes.Degree:Degree of a node is defined as the number of children of that node. The degree of the tree is the highest degree of a node among all the nodes.Path:The nodes in the tree has to be reachable from other nodes through a unique sequence of edges called path. The number of edges in a path is called the length of the path.Level of a node:The level of a node is defined as the number of edges in the unique path between the root and the node.Subtree:A tree formed by a node and all of its descendants in the tree is called a subtree.## Tree C/C++ Programs