Find below algorithm to find loop/cycle in graph, Here in each stage I am checking for child node visited state. If any of the parent node has more than one child with visited state then it means graph has a loop. We can also use Disjoint Set (Or Union-Find) which I’ll show you in next… Read more
Activity Selection problem, You are given n activities with their start and finish times. Select the maximum number of activities that can be performed by a single person.
Algorithm to find next greater element in array for current element. If we do linear search then it would take O(n^2) but here we are going to use stack to implement this algorithm. It will going to take O(n) time.
Here we are going to use runner techniques, where there will be a two pointers slow and fast. Fast will going to take double steps then slow one, Lets see in below image.
This algorithm to find peak element in an array, Peak element is an element which has greater value than its left and right element. one way to get peak element is using linear search which takes O(n), but we can also search using binary algo.
This is to find lowest common ancestor node for two nodes in tree.
This is to find all possible paths starting from left top corner of matrix to right bottom corner But we have constrain on this. You can only move Right or bottom and we also have blocking, Here blocking means 0 and path means 1. You can move to particular right or bottom if we have… Read more
Find first and last index of target element from sorted array The best way we can do this with binary search. Big O will be O(2log(n)).
This algorithm to count number of valid substring in given binary string. Valid substrings will be 01, 10, 0011, 1100, 000111, 111000, 00001111, 11110000 …. etc
Merge two sorted arrays in a such a way that a newly generated array will be sorted. Here we are going to take two pointers one for each.