Java Loops II

  • + 2 comments

    what does this line(result += (1<< h) * b) do? what is the role of << operator?

    • + 2 comments

      a += b; is the same as a = a + b;

      (1<<h) Starts with 2 to the zeroth power, a binary 1, Shifts the number to the left by h binary bits, e.g 00000001 in binary left shift 1 becomes 00000010, left shift 2 becomes 00000100.

      Left-shifting a binary number by 1 bit position multiplies that number by 2. Left-shifting by 2 multiplies by 2^2. Left-shifting by 3 multiplies by 2^3, etc.

      • + 0 comments

        thankyou..

      • + 0 comments

        nice idea with the binary shift!

    • + 0 comments

      << is the bitwise left shift operator.

      1 << h takes the bits in 1 and shifts them with h positions to the left.

      1 << 0 == 1 1 << 1 == 2 1 << 2 == 4