Given a graph of N nodes, E edges, a node X and a distance K. The task is to print all the nodes within the distance K from X.
Output: 4 5 2 7 3
Neigbour nodes within distance 2 of node 4 are: 4 5 2 7 3
To print all the nodes that are at distance K or less than K. We can do it by applying dfs variation, that takes K node from where we have to print the distance until distance K.
dfs(K, node, -1, tree)
Here -1 indicates node parent.
This recursive function basically prints the node and then calls the dfs(K-1, neighbour of node, node, tree).
Base condition is K>0.
Below is the implementation of the above approach:
4 5 2 7 3
Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.
- Count nodes within K-distance from all nodes in a set
- Minimum nodes to be colored in a Graph such that every node has a colored neighbour
- Print all nodes at distance k from a given node
- Print all nodes at distance K from given node: Iterative Approach
- Check if a given array contains duplicate elements within k distance from each other
- Print nodes at k distance from root
- Find node U containing all nodes from a set V at atmost distance 1 from the path from root to U
- Print levels with odd number of nodes and even number of nodes
- Sum of all odd nodes in the path connecting two given nodes
- Maximize count of nodes disconnected from all other nodes in a Graph
- Find distance between two nodes of a Binary Tree
- Shortest distance between two nodes in BST
- Find the shortest distance between any pair of two different good nodes
- Find count of pair of nodes at even distance
- Print all nodes that don't have sibling
- Print all nodes in a binary tree having K leaves
- Print all leaf nodes of an n-ary tree using DFS
- Program to print all the non-reachable nodes | Using BFS
- Print node whose each neighboring Tree has all nodes of same color
- Delete N nodes after M nodes of a linked list
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.