Simple Explanation And Implementation Of Knuth-Morris-Pratt (KMP) Algorithm For String Search

Introduction We have seen brute force approach to string search here. Brute force approach to string search has time complexity of O(n*m). Donald Knuth and Vaughan Pratt, and James H. Morris conceived the algorithm in 1970. KMP algorithm is the first algorithm to have linear time complexity. Problem Statement We will assume text (where we... Continue Reading →


Network Flows – Maximum Flow

Network flows is a class of problems dealing with directed graphs and the properties of functions defined on the graph. Flow Flow represents any element which does not disappear while traveling through the edges of the directed graph. Flow can be current in the electric network, data packets in case of the computer network and... Continue Reading →

Binary Heap – Data Structure

Usage In Heapsort In Priority Queue Not the garbage collector storage (as provided by JVM) Definition A binary Heap is an array object. We can view that array object as a near complete binary tree. A binary tree is said to be a complete binary tree when all the nodes except possibly for the leaves... Continue Reading →

Blog at

Up ↑