What is Traversing in Data Structure?
Overview
Traversing in the data structure is a very important operation that can be performed on any data structure. Traversing in Data Structure means systematically visiting every element of it. Traversing is a process in which each element of a data structure is accessed. Accessing an element of data structure means visiting every element at least once. Traversing is performed to display every element of data structure or to perform any operation on its element. Traversing is also known as iterating over the data structure.
Takeaways
Traversing operation is used to access elements of data structure or to perform some operation on elements.
What is the Traversal of a Binary Tree?
A binary tree is a data structure in which data is stored in a hierarchical form. Traversal of the binary tree means visiting every node of the tree. The process of accessing the nodes of a tree in some order is called a traversal of a binary tree. Any process for visiting all of the nodes is called a traversal.
What is the Traversing of a Linked List?
A linked list is a data structure which we will traverse from the head node to the last node of the list. Traversing a linked list means visiting every node of the linked list to perform some operation on the nodes.
What is Traversal Order?
Unlike linear data structures(Array, Queues, Linked List, Queues, etc.) that have only one way to traverse them but the tree data structure can be traversed in multiple ways.
The tree can be traversed in three ways:
In-order Traversal
In inorder to traversal of the binary tree,
- Firstly left subtree is visited
- Then the root is visited
- The right subtree is visited.
Above 3 steps are recursively performed.
An in-order traversal of the Binary Search Tree gives us the ascending order of values stored in the tree.
Pre-order Traversal
In pre-order traversal of a binary tree,
- Firstly root is visited
- Then the left subtree is visited
- Then finally the right subtree is visited.
Above 3 steps are recursively performed.
Post-order Traversal
In post-order traversal of the binary tree root node is visited at the last. In this
- Firstly left subtree is visited
- Then the right subtree is visited.
- And at last, the root is visited.
Above 3 steps are recursively performed.
Binary Tree Traversal Techniques
Traversing a binary tree means accessing every node of a tree.
The Tree can be traversed in three ways:
In-order Traversal
Algorithm
Algorithm Inorder(tree)
- Traverse the left subtree of the tree, call Inorder(left-subtree)
- Visit the root of the tree.
- Traverse the right subtree of the tree, call Inorder(right-subtree)
Example
Below is an image to show an example of the inorder traversal
An in-order traversal of the above example is: 4 2 5 1 3
Pre-order Traversal
Algorithm Algorithm Preorder(tree)
- Visit the root of the tree.
- Traverse the left subtree of the tree, call Preorder(left-subtree)
- Traverse the right subtree of the tree, call Preorder(right-subtree)
Example
Below is an image to show an example of the preorder traversal
Pre-order traversal of the above example is: 1 2 4 5 3
Post-order Traversal
Algorithm
Algorithm Postorder(tree)
- Traverse the left subtree of the tree, call Postorder(left-subtree)
- Traverse the right subtree of the tree, call Postorder(right-subtree)
- Visit the root of the tree.
Example
Below is an image to show an example of the postorder traversal
Post-order traversal of the above example is: 4 5 2 3 1
What are Tree Traversal Methods?
Traversal Implementation
C++ Implementation
Output
Java Implementation
Output
Python Implementation
Output
Examples for Traversing in the Data Structure
Array Traversal Example
Below is an image to show an example of the array traversal
Traversal of the above array is 1,2,3,4,5,6
Linked List Traversal Example
Below is an image to show an example of the linked list traversal
Traversal of the above-Linked List is 1,2,3,4,5,6
Learn about Graph Traversal in Data Structure
Let us take a recap of Graph Traversal
In graph traversal, every node of the graph is visited at least once. Two techniques are used for graph traversal, i.e. Depth First Search and Breadth-First Search.
Boost your C++ proficiency with expertly designed Data Structures in C++ Course by Scaler Topics. Get started now!
Conclusion
- Traversing a data structure is a very important operation that can be performed on data structures like an array, linked list, tree, graph, etc.
- Traversing means accessing each element of data structure at least once.
- Linked List traversal means accessing all the elements of the list starting from the head node to the last node.
- Traversing a tree and graph means visiting every node at least once.
- In-tree data structure, we have three types of traversal: In-order traversal, Pre-order traversal, and Post-order traversal.
- In the graph, we have Depth First Search and Breadth-First Search for traversing.