【劍指offer中等部分4】二進位制中1的個數(java)
題目描述
輸入一個整數,輸出該數32位二進位制表示中1的個數。其中負數用補碼錶示。
分析
首先大家如果對原碼、反碼、補碼概念模糊,可以去百度回顧回顧。
該題的意思就是先將輸入進的整數變成二進位制數,然後統計其二進位制數中1的個數,我們可以將二進位制數逐位與1進行與操作,如果與後為1,則是1,那麼個數就+1。這裡十進位制做與操作時會自動轉化成二進位制。
程式碼如下:
public class Solution {
public int NumberOf1(int n) {
int count = 0;
while(n != 0){
if((n & 1 ) == 1){
count++;
}
n = n >>> 1;
}
return count;
}
}
相關文章
- 【劍指offer】二進位制中1的個數
- 劍指 Offer 15. 二進位制中1的個數
- 二進位制中1的個數
- offer通過--10二進位制中統計1的個數-2
- 1. 二位陣列中的查詢(劍指offer)陣列
- 《劍指offer》:[64]資料流中的中位數
- 位運算(一):二進位制中1的個數
- 位運算--求一個 數二進位制中1的個數
- 求一個整數的二進位制中1的個數
- 【劍指offer】【1】二維陣列中的查詢陣列
- 劍指offer計劃9(動態規劃中等版)---java動態規劃Java
- 【刷演算法】二進位制中1的個數演算法
- 題目1513:二進位制中1的個數
- 查詢數N二進位制中1的個數(JS版 和 Java版)JSJava
- 劍指offer面試題12 列印1到最大的n位數面試題
- 劍指 Offer 列印從1到最大n位數c++C++
- 劍指offer計劃5(查詢演算法中等版)---java演算法Java
- JZ-011-二進位制中 1 的個數
- 求二進位制數中1的個數(程式設計之美)程式設計
- 【c語言】統計一個數二進位制中的1的個數C語言
- 劍指offer計劃20( 搜尋與回溯演算法中等)---java演算法Java
- 【劍指offer】二維陣列中的查詢陣列
- 劍指Offer-把陣列中的數排成一個最小的數陣列
- 劍指Offer積累-JZ1-二維陣列中的查詢陣列
- 劍指Offer 表示數值的字串字串
- 劍指 offer(1) -- 陣列篇陣列
- 二進位制求5個1的格式。。。。
- 劍指Offer-17-列印從1到最大的n位數-Java程式碼實現(兩種思路)Java
- LeetCode C++ 劍指 Offer 64. 求1+2+…+n【Bit Manipulation】中等LeetCodeC++
- 劍指offer刷題之路--1.陣列中重複的數字陣列
- 【劍指offer】陣列中只出現一次的數字(1)陣列
- 【劍指offer】字串轉整數字串
- 劍指Offer--陣列中重複的數字陣列
- 《劍指offer》:[51]陣列中的重複數字陣列
- 劍指offer——重建二叉樹二叉樹
- 【劍指offer】二叉樹深度二叉樹
- java中二進位制、八進位制、十進位制、十六進位制的轉換Java
- 二維陣列中的查詢——牛客劍指offer陣列