int ClearHighestBitSet (unsigned int n)
{
double x;
int exp;
x = frexp((double)n, &exp);
return n ^ (1 << (exp-1))
}
To see how it works, look up the standard C++ function frexp.
Dave
On Jul 23, 10:15 am, Tech Id <[email protected]> wrote:
> Write a C function that unsets the leftmost set bit of an integer in
> less than order (n)
> n here is 32 (bit-length of an integer)
> Hint: do some bit-tricks
--
You received this message because you are subscribed to the Google Groups
"Algorithm Geeks" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/algogeeks?hl=en.