依舊的博客
技術(shù)學(xué)習(xí)
C++博客
首頁
新隨筆
聯(lián)系
聚合
管理
17 Posts :: 1 Stories :: 2 Comments :: 0 Trackbacks
常用鏈接
我的隨筆
我的評論
我參與的隨筆
留言簿
(3)
給我留言
查看公開留言
查看私人留言
隨筆分類
(15)
編程(13)
動手(1)
基礎(chǔ)(1)
業(yè)務(wù)
隨筆檔案
(17)
2007年4月 (1)
2007年1月 (1)
2006年10月 (1)
2006年9月 (1)
2006年8月 (2)
2006年6月 (1)
2006年5月 (10)
文章分類
(9)
編程(4)
動手(1)
基礎(chǔ)(1)
思想(3)
文章檔案
(1)
2007年5月 (1)
搜索
最新評論
1.?re: 思路欣賞
確實(shí)沒有太直接的用處,訓(xùn)練思維吧
--zliner
2.?re: 思路欣賞
沒有看明白,但在看完了以后,會想說,這樣的想法,能幫助我們解決哪些問題?
--E398
閱讀排行榜
1.?MVC模式和文檔/視圖結(jié)構(gòu)(3059)
2.?觀察者模式(2290)
3.?C/S通信和Winsock編程(2280)
4.?錯誤碼、異常和斷言(1448)
5.?COM基本概念和COM模型(1173)
評論排行榜
1.?思路欣賞(2)
2.?MFC的五種基本機(jī)制(0)
3.?多操作系統(tǒng)的引導(dǎo)(0)
4.?用例分析基礎(chǔ)(0)
5.?MVC模式和文檔/視圖結(jié)構(gòu)(0)
思路欣賞
欣賞好的思路是一件愉快的事,特別是對我不會做的題目。
1. 問題:對32位的二進(jìn)制整數(shù),不用循環(huán),求出其中1的個數(shù)。
#define
?POW(c)?(1<<(c))
#define
?MASK(c)?(((unsigned?long)-1)?/?(POW(POW(c))?+?1))
#define
?ROUND(n,?c)?(((n)?&?MASK(c))?+?((n)?>>?POW(c)?&?MASK(c)))
int
?bit_count(unsigned?
int
?n)
{
????n?
=
?ROUND(n,?
0
);
????n?
=
?ROUND(n,?
1
);
????n?
=
?ROUND(n,?
2
);
????n?
=
?ROUND(n,?
3
);
????n?
=
?ROUND(n,?
4
);
????
return
?n;
}
基本的想法是把所有的1加起來,得到的就是1的個數(shù)。我們需要把這些1分離出來,每個1都是平等的,與其位置無關(guān)。難題在于不能一個一個去取,那就用到了循環(huán),當(dāng)然遞歸也是不允許的。需要有一種統(tǒng)一的辦法,可是很難想象具體該怎樣。我們逐步地做這件事,假設(shè)前16位和后16位分別求得了1的個數(shù),那么加起來就行了。16位二進(jìn)制中的1仍然是未知的,隨機(jī)出現(xiàn)的,問題的性質(zhì)沒有變,但我們可以繼續(xù)分解,這種逐步的做法不一定就意味著遞歸。每個16位分解為兩個8位,...,每個2位分解為兩個1位,把兩個1位上的數(shù)相加就是這兩位上1的個數(shù)。現(xiàn)在需要取出每一位上的數(shù)嗎?如果想到了這個問題,就離最終的思路不遠(yuǎn)了。現(xiàn)在32位已經(jīng)分成了16個兩位,很容易將其看作兩個16位,一個是所有奇數(shù)位,一個是所有偶數(shù)位。我們不難把這兩個16位分開,然后移位相加,就求出了每兩位中1的個數(shù)。到了這一步,以后的思路就很自然了。
參考:
《計(jì)算二進(jìn)制位'1'的個數(shù)》來自?
http://kaikai.cnblogs.com
posted on 2006-05-12 23:14
依舊的博客
閱讀(667)
評論(2)
編輯
收藏
引用
所屬分類:
編程
Feedback
#
re: 思路欣賞
2006-06-23 18:54
E398
沒有看明白,但在看完了以后,會想說,這樣的想法,能幫助我們解決哪些問題?
回復(fù)
更多評論
#
re: 思路欣賞
2006-06-23 20:44
zliner
確實(shí)沒有太直接的用處,訓(xùn)練思維吧
回復(fù)
更多評論
刷新評論列表
只有注冊用戶
登錄
后才能發(fā)表評論。
【推薦】100%開源!大型工業(yè)跨平臺軟件C++源碼提供,建模,組態(tài)!
相關(guān)文章:
用例分析基礎(chǔ)
MFC的五種基本機(jī)制
思路欣賞
幾種排序方法的實(shí)現(xiàn)
多線程通信的機(jī)制
COM基本概念和COM模型
排序的方法
數(shù)據(jù)庫范式及其涵義
C/S通信和Winsock編程
論面向?qū)ο?/a>
網(wǎng)站導(dǎo)航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
Powered by:
C++博客
Copyright © 依舊的博客
精品国产乱码久久久久久浪潮
|
99国产精品久久
|
国产亚洲精品久久久久秋霞
|
亚洲精品国产字幕久久不卡
|
欧美一区二区精品久久
|
久久婷婷五月综合成人D啪
|
无遮挡粉嫩小泬久久久久久久
|
久久久久久久久无码精品亚洲日韩
|
久久久久国产一区二区三区
|
久久久久人妻一区二区三区vr
|
精品国产乱码久久久久久郑州公司
|
国产高清美女一级a毛片久久w
|
999久久久免费精品国产
|
久久精品草草草
|
久久久久久久久无码精品亚洲日韩
|
99久久精品国产麻豆
|
午夜精品久久久久9999高清
|
色综合久久综精品
|
精品综合久久久久久98
|
久久se这里只有精品
|
久久天天躁狠狠躁夜夜96流白浆
|
久久亚洲AV成人无码
|
青青热久久国产久精品
|
亚洲AV成人无码久久精品老人
|
天天躁日日躁狠狠久久
|
久久精品国产亚洲Aⅴ香蕉
|
久久er99热精品一区二区
|
久久人人爽人人爽人人片av麻烦
|
国产综合精品久久亚洲
|
国产午夜福利精品久久2021
|
国内精品久久久久影院薰衣草
|
午夜精品久久影院蜜桃
|
日本精品久久久中文字幕
|
久久久久久伊人高潮影院
|
久久精品国产一区二区电影
|
久久99国产精品一区二区
|
无码人妻精品一区二区三区久久
|
粉嫩小泬无遮挡久久久久久
|
亚洲va久久久噜噜噜久久男同
|
国产色综合久久无码有码
|
99久久夜色精品国产网站
|