亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

Leetcode 201. Bitwise AND of Numbers Range

2019-11-10 18:37:51
字體:
來源:轉載
供稿:網友

Given a range [m, n] where 0 <= m <= n <= 2147483647, return the bitwise AND of all numbers in this range, inclusive.

For example, given the range [5, 7], you should return 4.

s思路: 1. 簡單粗暴的做法,就是把所有數都遍歷一遍做and。這肯定不是題目要求的做法 2. 需要根據and的特點,如果所有數全1,and結果才為1,只要有一個0,結果都是0.也就是說,and運算是不精確的運算! 3. 仔細看了一下,總結規律。例如:[5,7]

5:1016:1107:111

把5和7做AND可以得到101,即:高位是正確的,但是低位由于沒有and中間變化的值,所以不正確;把7-5得到010,其中1表示從這一位有翻轉,由于這一位有翻轉,那么1右邊的都應該有翻轉,即:看到的是從右往左第2位翻轉了,由于高位翻轉是因為低位翻轉引起的,所以低位也必然翻轉,所以看到1,說明這個1和之后的所有數位都翻轉過,所以只需要找到這個差值最左邊1的位置,然后把5和7的and結果從這個位置往右所有數都置零! 4. 另外還在網上看到方法2,也很妙!妙在哪兒呢?從m==n這個極限條件出發:當m==n,說明m就是結果,但是大部分情況m!=n。這個解法有意思的地方,就是把m!=n的普遍情況想辦法變成m==n的邊界情況。如何變?有一個基本事實是這樣的:如果n>m,最低位必然是翻轉過的。因此,我們設置一個變量pos來記錄翻轉的bit位,然后m和n都往右移一位,繼續比較m和n,這個過程是iterative,直到m==n,此時我們也知道有多少位是翻轉過的,因此把這些位置零即可! 5. 這中思路可以推廣:從極限情況出發,這里就是m==n就是極限情況,把其他的情況移位得到極限情況。

//方法1:按bit一位一位的處理。detail-oriented。bottom-up思路class Solution {public: int rangeBitwiseAnd(int m, int n) { // int res=m&n; int diff=n-m; int pos=0; while(diff){ diff>>=1; if(res&1<<pos) res=res^1<<pos; pos++; } return res; }};//方法1.1:還是一位一位的移動,優化了一下,不用在中間用mask,最后用一次mask就可以了!29msclass Solution {public: int rangeBitwiseAnd(int m, int n) { // int res=m&n; int diff=n-m; int pos=0; while(diff){ diff>>=1; pos++; } res=res&~((1<<pos)-1); return res; }};//方法2:抓住邊界條件!這個思路也很好,就是慢點!52msclass Solution {public: int rangeBitwiseAnd(int m, int n) { // int pos=0; while(m!=n){ ++pos; m>>=1; n>>=1; } return m<<pos; }};
上一篇:Map.Entry詳解

下一篇:110. Balanced Binary Tree

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美激情视频在线| 97不卡在线视频| 亚洲第一色在线| 精品视频在线播放| 在线观看视频99| 欧美日韩中文字幕日韩欧美| wwwwwwww亚洲| 曰本色欧美视频在线| 色播久久人人爽人人爽人人片视av| 日韩中文有码在线视频| 91豆花精品一区| 欧美综合第一页| 欧美精品videos性欧美| 成人国产精品日本在线| 久久视频免费在线播放| 欧美成人亚洲成人日韩成人| 欧美成人免费观看| 中文字幕欧美日韩va免费视频| 亚洲色图激情小说| 成人黄色av网站| 亚洲欧美国产va在线影院| 最近免费中文字幕视频2019| 成人中文字幕+乱码+中文字幕| 精品久久久久久国产91| 欧美在线www| 在线电影中文日韩| 亚洲视频免费一区| 韩国日本不卡在线| 欧美日韩一区二区三区| 欧美专区第一页| 成人激情视频在线| 91精品国产91久久久久福利| 亚洲欧美综合另类中字| 亚洲一级片在线看| 91丨九色丨国产在线| 欧美猛交免费看| 欧美日韩加勒比精品一区| 国产精品扒开腿做爽爽爽视频| 91av网站在线播放| 欧美第一淫aaasss性| 国产亚洲精品综合一区91| 中文国产成人精品久久一| 国产经典一区二区| 亚洲香蕉av在线一区二区三区| 中文字幕久热精品在线视频| 欧美性生交xxxxxdddd| 91精品综合视频| 成人黄色短视频在线观看| 欧美xxxx18性欧美| 少妇久久久久久| 一区二区av在线| 国产一区二区三区在线播放免费观看| 中文字幕日韩精品在线观看| xxx欧美精品| 日韩国产在线播放| 欧美激情一区二区三级高清视频| 久久成年人视频| 亚洲激情电影中文字幕| 国产成人福利视频| 日韩av片电影专区| 日韩亚洲综合在线| 亚洲视频欧美视频| 日韩欧美在线视频日韩欧美在线视频| 最近2019中文免费高清视频观看www99| 成人欧美一区二区三区在线湿哒哒| 亚洲国产成人久久| 国产一区二区三区毛片| 久久久国产精彩视频美女艺术照福利| 伊人久久综合97精品| 精品无人国产偷自产在线| 亚洲精品电影在线| 欧美中文字幕第一页| 欧美高清视频在线播放| 热久久美女精品天天吊色| 亚洲精品免费av| 久久影视电视剧免费网站| 久久久久久久久久久人体| 成人国产在线激情| 日韩高清电影好看的电视剧电影| 亚洲黄色免费三级| 高清一区二区三区四区五区| 亚洲天堂日韩电影| 日韩一级裸体免费视频| 911国产网站尤物在线观看| 日韩成人在线免费观看| 92看片淫黄大片欧美看国产片| 精品国偷自产在线视频99| 亚洲黄页视频免费观看| 欧美在线视频免费观看| 国产suv精品一区二区三区88区| 欧美黄色三级网站| 欧美日韩在线视频一区| 亚洲精品999| 日韩中文字幕久久| 91精品国产777在线观看| 欧美精品在线播放| 欧美日在线观看| 久久99精品国产99久久6尤物| 亚洲va欧美va国产综合剧情| 在线播放日韩欧美| 国产精品麻豆va在线播放| 日本精品久久电影| 久久免费观看视频| 国产精品96久久久久久| 国产日韩在线看片| 午夜精品一区二区三区视频免费看| 亚洲视频国产视频| 亚洲国产成人精品女人久久久| 日韩国产在线播放| 欧美日韩国产综合新一区| 91网站在线免费观看| 成人精品一区二区三区电影黑人| 欧美亚洲在线视频| 欧美激情一区二区三区成人| 欧美最猛性xxxx| 国产成人精品在线| 最近更新的2019中文字幕| 成人免费午夜电影| 91美女片黄在线观| 国产日本欧美一区二区三区| 在线成人激情黄色| 亚洲欧洲成视频免费观看| 亚洲精品97久久| 91精品国产亚洲| 欧美一区二区影院| 国产一区红桃视频| 欧美成人免费视频| 中文字幕精品一区久久久久| 中文国产成人精品| 国产不卡视频在线| 亚洲国产精品悠悠久久琪琪| 色偷偷偷亚洲综合网另类| 日本精品一区二区三区在线| 国产一区二区三区在线观看视频| 久久精品夜夜夜夜夜久久| 国产视频精品久久久| 在线观看欧美日韩国产| 福利二区91精品bt7086| 国产精品视频999| 国产精品日韩电影| 亚洲欧美日韩另类| 午夜精品久久久久久久久久久久| 亚洲精品电影在线观看| 日韩禁在线播放| 美女扒开尿口让男人操亚洲视频网站| 色偷偷亚洲男人天堂| 成人综合国产精品| 亚洲人成在线一二| 国产欧美va欧美va香蕉在线| 久久视频在线观看免费| 精品综合久久久久久97| 国产精品美女主播| 精品国产一区久久久| 亚洲视频自拍偷拍| 成人激情视频免费在线| 免费av在线一区| 亚洲女人天堂视频| 4438全国亚洲精品在线观看视频| 国产精品一区=区| 亚洲精品久久久久久久久久久| 亚洲色图偷窥自拍| 亚洲一区二区三区乱码aⅴ| 国产在线a不卡| 欧美与黑人午夜性猛交久久久|