Показать сообщение отдельно
Старый 16.12.2010, 09:15   #8
Andrew_1978
Неактивный пользователь
 
Регистрация: 16.12.2010
Сообщений: 3
Репутация: 0
По умолчанию Re: Срочно! Помогите с алгоритмом

В качестве второго варианта, более быстрого, но требующего больше памяти могу предложить:
вместо:
for (int j = 0; j <= 7; j++)
if (Str[i] & (1 << j) == 0) Result += 1;
return Result;
создаём массив из 256 чисел, каждое из которых соответствует число нулей в соответствующем числе.
Например,
unsigned char ZeroAmount [] = { 8, 7, 7, 6, 7, 6, 6, 5, ... и так далее. }

Добавлено через 3 минуты
Тогда число нулевых битов в каждом символе строки будет ZeroAmount[Str[i]]
Andrew_1978 вне форума
 
Ответить с цитированием Вверх
 
Время генерации страницы 0.02006 секунды с 10 запросами