KMP algorithm implementation in Java
The Knuth–Morris–Pratt string-searching algorithm (or KMP algorithm) searches for occurrences of a "word" W within a main "text string" S by employing the observation that when a mismatch occurs, the word itself embodies sufficient information to determine where the next match could begin, thus bypassing re-examination of previously matched characters.
The program accepts two inputs, the pattern and the text.
And prints the number of times the pattern is encountered in the text.