What is an efficient way to implement a fast search algorithm for full-text search