Як в google здійснюється миттєвий пошук (живий пошук)
Я розробляв деякі програмні алгоритми і думаю якби я робив подібне, я б зробив так:
Користувач ввів першу букву. Гугл прочитав що це за буква і вже шукає слова тільки з папки, в якій тільки слова на цю одну букву. Кількість слів, з яких потрібно вибирати вже скорочується в стільки разів, на скільки папок ділять. А папок за все, напевно, скільки всього символів в Юникоде.
Ввів людина другу букву - тепер уже шукається всередині цієї папки. Тобто всередині неї знаходить іншу папку, з назвою з двох букв першої + другий літери.
Знаходить там інформацію про те, які слова на цю букву частіше вводяться і видає невеликий список.
Та й у Гугла сервера - суперкомп'ютери, тому вони можуть за мить прорахувати дуже багато логічних розгалужень.
Миттєвий пошук від Гугла підрозділяється на чотири етапи. Перший етап відбувається ще до пошукового запиту, це індексація сторінок, для більш легкого пошуку. Під час пошуку (другий етап), показуються підказки (це і є живий пошук). Наступний, третій етап, це визначення рейтингу сайтів за запитом по безлічі критеріїв. Ну і останній, четвертий етап, це завантаження результату згідно рейтингу. На фото і в цій статті можна подивитися докладніше.
Пошук здійснюється ще при введенні слів. Не секрет, що у всіх пошукових служб є статистика запитів, ось їй і пользуетсся живий пошук, підбираючи найчастіші запити до ваших введеним буквах або словами. Найчастіші запити на вашу вводу стають видно відразу, ще до введення в пошуковий рядок повної фрази. Це хоч трохи, але все ж економить час)