:Shit.Life.synapsis.GetStatus = "Still alive";
дневник заведен 10-12-2002
постоянные читатели [10]
Agneshka, beOwned, cpcat, Hunger, iowa82, lisxi, SunJazz, SuperEm, warm, свирепый йожик
закладки:
цитатник:
дневник:
[2] 06-01-2003 09:53
Кстати ...

[Print]
Забрел случайно
16-12-2002 09:15 Пригодится:
Функция подсчёта количества двоичных едениц в переменной - задача скорее для проверки сообразительности и.
Я знаю очень красивый алгоритм:

int function (unsigned value)
{
int count;
for (count = 0; value; count++) value &= (value - 1);
return count;
}

А вот ещё более быстрый:

char lookupTable[] = { 0, 1, 1, 2, 1, 2, ... } //0-255 binary digit count

inline char getDigitCount(unsigned char v)
{
return lookupTable[v];
}
Закрыть