java演算法5 整數的二進位制表達中有多少個1

2021-07-24 23:11:14 字數 605 閱讀 4951

演算法目的:統計整數的二進位制表達中有多少個1

演算法實現原理:使用位運算,正負號處理問題。

實現:

/*

* to change this license header, choose license headers in project properties.

* to change this template file, choose tools | templates

* and open the template in the editor.

*/package algorithm_database;

/**

* @author zhengchao

*/public class countone

public static int count1(int x)

return res;

}}/*

<< :左移運算子,num<<1,相當於num*2;

>>:右移運算子,num>>1,相當於num/2;

>>>:無符號右移,忽略符號位,空位以0補齊。

*/

注意事項:要使用無符號右移。

輸出結果:32

整數的二進位制表示

目錄總結 整數的二進位制表示,需要區分正整數和負整數來看。看正整數的二進位制表示,就要先了解一下位權。十進位制 二進位制都有位權。以 123 為例 123 1 10 2 2 10 1 3 10 0。每個位置的位權都不一樣,十進位制從右到左,以 1 開始,依次乘 10 也就是說第 1 位為 1 第 2...

將整數的二進位制表示轉浮點數的二進位制表示

將整數的二進位制表示轉浮點數的二進位制表示 已知 整數3490593 16進製表示為0x354321 求 其對應的浮點數3490593.0的二進位制表示。解法如下 先求出整數3490593的二進位制表示 h 3 5 4 3 2 1 b 0011 0101 0100 0011 0010 0001 21...

整數二進位制表示中1的個數

出自 題目 輸入乙個整數,求該整數的二進位制表達中有多少個1。例如輸入10,由於其二進位制表示為1010,有兩個1,因此輸出2。分析 這是一道很基本的考查位運算的面試題。包括微軟在內的很多公司都曾採用過這道題。乙個很基本的想法是,我們先判斷整數的最右邊一位是不是1。接著把整數右移一位,原來處於右邊第...