Соответствующая программа будет хранить индекс всех вопросов. Когда вы задаете вопрос, все ключевые слова в вашем вопросе сопоставляются с индексом. Это похоже на поиск Google. Lucene поиск с открытым исходным кодом может быть (и с большой вероятностью) использован для этого. Поскольку результаты не совсем точны, я предполагаю, что они приводят только заголовки вопросов в качестве приблизительного значения.
Другое связанное ключевое слово - совместная фильтрация - алгоритм, популяризированный Amazon для рекомендации продуктов, основанных на поведении других аналогичных клиентов. В текущем случае альтернативный алгоритм, основанный на совместной фильтрации, состоит в следующем: ключевые слова извлекаются из вопроса, а затем обнаруживаются теги, связанные (в истории) с ключевыми словами. Вопросы, которые имеют эти теги, возвращаются. Что ж, нужны эксперименты, чтобы понять, хорошо ли это работает.