Создание списка из ответа Volley или из класса модели

Несколько открытых вопросов: -

  1. Если число отрицательно, то?
  2. Если число равно 1024, то метод «итеративно делить на 2» будет итерировать 10 раз.

мы можем модифицировать алгоритм для поддержки отрицательного числа следующим образом: -

count = 0
while n != 0
if ((n % 2) == 1 || (n % 2) == -1
    count += 1
  n /= 2  
return count

теперь, чтобы преодолеть вторую проблему, мы можем написать algo как: -

int bit_count(int num)
{
    int count=0;
    while(num)
    {
        num=(num)&(num-1);
        count++;
    }
    return count;
}

для полной справки см.:

http://goursaha.freeoda.com/Miscellaneous/IntegerBitCount.html

0
задан jerry 31 December 2018 в 06:40
поделиться