Abstract: The exact pattern matching problem is the problem of finding the exact match for a pattern in a text. This problem is a basic problem in many applications in computer science. Many algorithms recently presented to solve this problem are based on indexing data structures. A major indexing data structure used by these algorithms is the enhanced suffix array, which is basically the suffix array enhanced with extra tables that give further information. The best theoretical time bound based on this data structure is O(mlog ||), where m is the pattern length and || is the alphabet length. Although this complexity is theoretically considered the best achieved, it could not practically outperform the performance of the algorithm of Manber and Myers based only on the suffix array that takes O(mlog n), where n is the length of the text. In fact, Manber and Myers based algorithm is faster 1.5 up to 6.5 times compared to the other algorithms. In this thesis, we present a modification to the enhanced suffix array which enables us to achieve O(m) time to find the pattern, i.e., independent of . The basic idea behind this improvement is the extensive use of the minimal perfect hashing technique, by which a static set of n elements can be accessed in O(1) time while maintaining a linear space. Furthermore, we explored different implementation tricks to speed up our searching algorithm. Interestingly, our algorithm became faster than Manber and Myers’ algorithm for certain alphabet size and range of query lengths