Algorithm — различия между версиями
Материал из Star-Staff
Captain (обсуждение | вклад) |
Captain (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
− | О, это Алгоритм, | + | О, это Алгоритм, который волнует многие прогрессивные умы человечества. :) |
Версия 20:02, 21 декабря 2011
О, это Алгоритм, который волнует многие прогрессивные умы человечества. :)
И поэтому, несмотря на то что мы фанаты open-source, здесь мы выкладываем алгоритм нескольколетней давности.
С тех пор мы сильно развились, претерпел существенные изменения, был круто оптимизирован. Мы придумали к нему много хороших эвристик (переборных и не только).
Но тем не менее общий каркас и модельный пример этот алгоритм тоже можно использовать.
Алгоритм
#include <наша_мега_база_кандидатов>
#include <nanimator>
#include <list>
void Nanimator::CandidateSearch(Query q, Client clinet) {
bool кандидат_найден = false;
list<candidate> CandidateList;
list<candidate> LongList;
while (!кандидат_найден)
{
// наша база
search_base_fill(q, CandidateList, LongList);
// работные сайты
search_sites_fill(q, CandidateList, LongList);
// соц.сети, форумы и сообщества
search_snfc(q, CandidateList, LongList);
list<candidate>::iterator i;
for (i = LongList.begin(); i != LongList.end(); i++)
{
// рекомендации
ask_for_recommendations(*i, CandidateList);
}
candidate_sort(CandidateList);
Response r;
r = candidate_send(CandidateList, client);
if (r.hire)
{
кандидат_найден = true;
}
else
{
q = correction(q, r);
}
}
}