读书笔记一
1. 獲取一個整數的末尾零的個數,如0100, 個數為2
int?LowBit(int?x){
????return?x?&?(-x);????//?return?x?&?(x?^?(x?-?1)?);
}
?
?備注:這是從樹形數組里面的一個方法,來源于百科。一個數的相反數的二進制:取反加一。
2. ?獲取nNum的上界二次方,比如 4< 5 < 8 獲得8
int?inline?GetMipNum(int?nNum){
????if(nNum<0)
????????return?-1;
????
????nNum--;
????nNum?|=?nNum?>>?1;
????nNum?|=?nNum?>>?2;
????nNum?|=?nNum?>>?4;
????nNum?|=?nNum?>>?8;
????nNum?|=?nNum?>>?16;
?
????return?nNum+1;
}?
轉載于:https://www.cnblogs.com/kddsly/archive/2010/09/19/1831369.html
總結
- 上一篇: 国内首款商用LCA软件(eBalance
- 下一篇: Linux上机实验1