Skip to Main Content
Abstract-Breadth First Search (BFS) can calculate the shortest path for un-weighted graphs very efficiently but when it comes to non-negative weighted graphs it fails at a point when a successor updates a predecessor. Such nodes are being referred as Culprit nodes in this research. These Culprit nodes are the ones that cause error in shortest path in an algorithm that traverses like BFS. This research targets on recognizing and marking Culprit nodes to disengage them until they are properly and completely updated. Processing through such nodes is postponed until all possible updates are made on these nodes nullifying all possible chances of errors. As nodes are being traversed in BFS fashion with few violations and additions promising a O(k(|V| + |E|)) time algorithm where 0 < k + log n. More over this algorithm does not need any complex data structure.