Merhaba, bir yerde kelimeler için sözlük gibi bir şey tutabilirsiniz (okul, gitmek gibi kelimeleri içerecek), kullanıcı bir şey arattığında (okula gitmke diye yanlış yazılmış bir şey aratıyor diyelim), kelimelere olan benzerliği bulacak algoritma yazılabilir, buradaki algoritmadaki complexity size kalmış, ben olsam alıştırma için regex kullanarak bir şeyler denerdim. Mesela okula kelimesini düşünün, "o" ile başlayan kelimeler diye sözlüğüme bakardım, o ile başlayan çok fazla kelime var ise search işlemini "ok" ile tekrar yapardım, gene çok fazla sonuç varsa "oku" ile denerdim ihtimaller çok azalana kadar, sondan aratma yapılabilir, kelimedeki harf sayısına yakın kelimeler buldurulabilir vb. Tabi sözlüğünüze arama için dile mahsus kuralları eklemeniz gerekiyor, mesela gitmek kelimesini git + mek (ve diğer çok sayıda Türkçeye mahsus ek) şeklinde eklemek daha iyi sonuç verecektir. Bu tür kuralları düşünmeniz lazım.