摘要:題目描述輸入一個(gè)整數(shù),輸出該數(shù)二進(jìn)制表示中的個(gè)數(shù)。其中負(fù)數(shù)用補(bǔ)碼表示。代碼實(shí)現(xiàn)分析例如來(lái)說(shuō),二進(jìn)制表示為,那么,,,可以看出來(lái)每次與操作都會(huì)消滅掉最右邊的,所以最終可以得出的二進(jìn)制表示中有幾個(gè)
題目描述
輸入一個(gè)整數(shù),輸出該數(shù)二進(jìn)制表示中1的個(gè)數(shù)。其中負(fù)數(shù)用補(bǔ)碼表示。
代碼實(shí)現(xiàn)function NumberOf1(n) { var count = 0; while(n !== 0){ count++; n = n & (n-1); } return count; }分析
例如n=13來(lái)說(shuō),二進(jìn)制表示為1101,那么:
n & (n-1) ——> 1101&1100 ——> 1100,count=1
n & (n-1) ——> 1100&1011 ——> 1000,count=2
n & (n-1) ——> 1000&0111 ——> 0000,count=3
可以看出來(lái)每次與操作都會(huì)消滅掉n最右邊的1,所以最終可以得出n的二進(jìn)制表示中有幾個(gè)1.
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/95902.html
摘要:圖解第二種算法圖解代碼示例算法如果為真,說(shuō)明拿到的是二進(jìn)制序列的個(gè)數(shù)為算法為的時(shí)候說(shuō)明已經(jīng)拿完了,循環(huán)終止二進(jìn)制序列中的個(gè)數(shù)以上代碼,還可做優(yōu)化在此僅作參考,若有更好的算法,還望能夠私信告知,多謝各位。 ?前言?: 算法是一個(gè)程序員的內(nèi)功,能很好的體現(xiàn)程序員的編程思維,通過(guò)學(xué)習(xí)和掌握常見的算...
摘要:長(zhǎng)話短說(shuō),讓我們來(lái)看一道題統(tǒng)計(jì)的個(gè)數(shù)給定一個(gè)非負(fù)整數(shù),對(duì)于任意,,計(jì)算的值對(duì)應(yīng)的二進(jìn)制數(shù)中的個(gè)數(shù),將這些結(jié)果返回為一個(gè)數(shù)組。第二版本的時(shí)間復(fù)雜度是最后版本的時(shí)間復(fù)雜度是,是的二進(jìn)制數(shù)中的的個(gè)數(shù),介于之間。 小胡子哥@Barret李靖給我推薦了一個(gè)寫算法刷題的地方leetcode.com,沒(méi)有ACM那么難,但題目很有趣。而且據(jù)說(shuō)這些題目都來(lái)源于一些公司的面試題。好吧,解解別人公司的面試題...
摘要:于是翻出了機(jī)房里的這本學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)與算法開始學(xué)習(xí)程序員的基礎(chǔ)知識(shí)。這本書用了我最熟悉的來(lái)實(shí)現(xiàn)各種數(shù)據(jù)結(jié)構(gòu)和算法,而且書很薄,可以說(shuō)是一本不錯(cuò)的入門教程。隊(duì)列在頭部刪除元素,尾部添加元素。 本系列所有文章:第一篇文章:學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)與算法之棧與隊(duì)列第二篇文章:學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)與算法之鏈表第三篇文章:學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)與算法之集合第四篇文章:學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)與算法之字典和散列表第五篇文章:學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)與算...
摘要:原題地址中國(guó)題目描述給定一個(gè)整數(shù),返回結(jié)果尾數(shù)中零的數(shù)量。示例輸入輸出解釋尾數(shù)中有個(gè)零說(shuō)明你算法的時(shí)間復(fù)雜度應(yīng)為。分析首先暴力破解法就是直接把最終的結(jié)果求出來(lái)然后看末尾有幾個(gè),但是這樣做的時(shí)間復(fù)雜度肯定是太大了。 原題地址:LeetCode中國(guó)-172 題目描述 給定一個(gè)整數(shù) n,返回 n! 結(jié)果尾數(shù)中零的數(shù)量。 示例 1: 輸入: 3輸出: 0解釋: 3! = 6, 尾數(shù)中沒(méi)有零。示...
閱讀 3633·2021-11-24 10:22
閱讀 3701·2021-11-22 09:34
閱讀 2502·2021-11-15 11:39
閱讀 1537·2021-10-14 09:42
閱讀 3672·2021-10-08 10:04
閱讀 1565·2019-08-30 15:52
閱讀 858·2019-08-30 13:49
閱讀 3028·2019-08-30 11:21