Если вы не работаете в Google, не так много хороших способов выяснить особенности их алгоритма ранжирования страниц ... который время от времени меняется.В Википедии изложены некоторые основы:
http://en.wikipedia.org/wiki/PageRank
Другие люди пишут длинные статьи:
http://www.smashingmagazine.com/2007/06/05/google-pagerank-what-do-we-really-know-about-it/
Если вас интересуют видыИз техник, которые участвуют в написании поисковой системы, есть несколько тем.Например, есть «сканирование в Интернете» и как писать программы, которые посещают веб-сайты и захватывают их содержимое ... и определяют, когда посещать сайты снова, чтобы увидеть, изменились ли они:
http://en.wikipedia.org/wiki/Web_crawler
Если на вашем компьютере (ах) есть данные для анализа и поиска, предметная область для изучения называется «Поиск информации» (или «IR»):
http://en.wikipedia.org/wiki/Information_retrieval
Это довольно новая наука, но над ней проделана большая работа.В Википедии есть список «бесплатного программного обеспечения для поисковых систем»:
http://en.wikipedia.org/wiki/Category:Free_search_engine_software
Я бы предположил, что если вы новичок в этом, то лучше начать с выяснения, какиспользовать что-то вроде Lucene, чтобы обеспечить окно поиска на вашем веб-сайте.Тогда покопайтесь и посмотрите, как это работает.Он был портирован на C ++, если это важно для вас:
http://clucene.sourceforge.net/