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

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

Leetcode 201. Bitwise AND of Numbers Range

2019-11-10 16:44:54
字體:
來源:轉載
供稿:網友

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; }};
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美性xxxx极品hd满灌| 亚洲欧洲在线观看| 亚洲色图日韩av| 97**国产露脸精品国产| 国产精品欧美激情在线播放| 欧美在线一级视频| 国产一区二区三区在线视频| 国产精品视频大全| 日韩成人av在线| 久久久国产成人精品| 91丝袜美腿美女视频网站| 成人精品视频99在线观看免费| 亚洲欧美日韩图片| 亚洲国产精品嫩草影院久久| 亚洲天堂网在线观看| 欧美极品欧美精品欧美视频| 91亚洲人电影| 亚洲第一av网| 亚洲丝袜在线视频| 欧美黄色三级网站| 亚洲精品资源美女情侣酒店| 久久亚洲成人精品| 日韩欧美视频一区二区三区| 亚洲高清不卡av| 免费99精品国产自在在线| 久久久久五月天| 亚洲成色www8888| 亚洲福利影片在线| 2018中文字幕一区二区三区| 国产精品免费视频久久久| 成人免费激情视频| 国产91色在线|| 97在线视频免费观看| 国产ts一区二区| 成人激情视频网| 91久久精品久久国产性色也91| 国产亚洲成av人片在线观看桃| 成人黄色免费看| 欧美在线视频网站| 亚洲精品wwww| 国外成人在线直播| 久久久女人电视剧免费播放下载| 欧美激情中文字幕在线| 欧美日韩国产91| 欧洲亚洲免费在线| 不卡毛片在线看| 日韩在线中文字| 这里只有精品视频| 亚洲色图第一页| 久久精品99久久久久久久久| 欧美激情一区二区三区成人| 亚洲美女精品成人在线视频| 91精品国产成人| 国产精品久久久久久久久久三级| 欧美疯狂xxxx大交乱88av| 国产美女91呻吟求| 欧美成人黄色小视频| 亚洲人午夜精品免费| 欧美成人亚洲成人日韩成人| 黄色精品一区二区| 国产精品人人做人人爽| 国内成人精品一区| 国产69精品久久久久99| 日韩精品亚洲元码| 日韩成人免费视频| 成人国产精品免费视频| 日韩免费在线视频| 欧美激情女人20p| 亚洲美女福利视频网站| 亚洲成人精品av| 亚洲一区二区久久| 精品国内自产拍在线观看| 92福利视频午夜1000合集在线观看| 国产精品美女久久久久av超清| 久久精品美女视频网站| 丝袜亚洲另类欧美重口| 高清日韩电视剧大全免费播放在线观看| 97国产一区二区精品久久呦| 奇米影视亚洲狠狠色| 久久精品国产亚洲7777| 亚洲码在线观看| 久久久久久久久久久91| 一区二区欧美久久| 亚洲黄色在线看| 91色视频在线导航| 日韩欧美aⅴ综合网站发布| 午夜精品一区二区三区在线播放| 亚洲永久免费观看| 亚洲欧洲美洲在线综合| 97视频在线看| 91精品国产综合久久久久久蜜臀| 91青草视频久久| 亚洲国产精品va在线看黑人| 久久久爽爽爽美女图片| 亚洲黄页网在线观看| 欧美性一区二区三区| 日韩av三级在线观看| 亚洲自拍偷拍视频| 精品视频偷偷看在线观看| 亚洲日本成人网| 一本色道久久综合狠狠躁篇的优点| 亚洲成人久久一区| 亚洲福利视频专区| 国产精品露脸av在线| 欧美在线视频网站| 久久精彩免费视频| 欧美激情第三页| 91在线免费网站| 美女av一区二区| 日韩中文字幕在线视频播放| 欧美精品在线播放| 国产第一区电影| 国产精品对白刺激| 性色av香蕉一区二区| 亚洲偷欧美偷国内偷| 欧美精品www| 欧美wwwxxxx| 亚洲欧美中文在线视频| 亚洲精品之草原avav久久| 久久久亚洲影院你懂的| 伊人成人开心激情综合网| 日韩最新中文字幕电影免费看| 亚洲香蕉成视频在线观看| 日韩精品中文字幕在线观看| 亚洲精品videossex少妇| 亚洲国产成人av在线| 啪一啪鲁一鲁2019在线视频| 亚洲午夜精品视频| 亚洲精品少妇网址| 欧美洲成人男女午夜视频| 热久久免费视频精品| 欧美电影免费观看高清完整| 欧美日韩一二三四五区| 成人在线国产精品| 亚洲欧美视频在线| 日韩精品欧美激情| 欧美国产第二页| 国产欧美精品一区二区三区-老狼| 日韩va亚洲va欧洲va国产| 国产精品观看在线亚洲人成网| www.国产精品一二区| 国产人妖伪娘一区91| 日本亚洲精品在线观看| 国产亚洲精品久久久| 亚洲www视频| 日韩视频在线免费| 亚洲精品美女视频| 久久精品99久久久久久久久| 欧美色xxxx| 日韩精品欧美国产精品忘忧草| 激情成人中文字幕| 日韩中文av在线| 国产精品激情av电影在线观看| 色综合色综合网色综合| 97碰碰碰免费色视频| 亚洲一区二区三区四区在线播放| 2019中文字幕在线| 欧美wwwwww| 色狠狠av一区二区三区香蕉蜜桃| 精品国产拍在线观看| 亚洲精品资源在线| 97精品视频在线| 国产va免费精品高清在线| 欧美在线视频免费观看|