首页 > 其他分享 >191. 位1的个数

191. 位1的个数

时间:2023-08-17 23:33:54浏览次数:40  
标签:示例 二进制 191 00000000000000000000000010000000 个数 int res 输入

编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 '1' 的个数(也被称为汉明重量)。

示例 1:

00000000000000000000000000001011 中,共有三位为 '1'。

示例 2:

输入:n = 00000000000000000000000010000000
输出:1
解释:输入的二进制串 00000000000000000000000010000000 中,共有一位为 '1'。

示例 3:

输入:n = 11111111111111111111111111111101
输出:31
解释:输入的二进制串 11111111111111111111111111111101 中,共有 31 位为 '1'。
class Solution:
    def hammingWeight(self, n: int) -> int:
        res = 0
        for i in range(32):
            if (n&1)==1:
                res=res+1
            n>>=1
        return res

n&1:求出1,0&1=0,1&1=1

标签:示例,二进制,191,00000000000000000000000010000000,个数,int,res,输入
From: https://blog.51cto.com/u_16123878/7128549

相关文章

  • 2个数组删除
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>在一个数组中删除另一个数组存在的值</title><styletype="text/css">html,body{width:100%;height:100%......
  • redis查询 第1个数据库,而不是默认的第0个数据库
    redis查询第1个数据库,而不是默认的第0个数据库 spring.redis.database=1默认:spring.redis.database=0car-test:0>getcar:info:detail:id001NULL##切换数据库car-test:0>select1OKcar-test:1>getcar:info:detail:id001{"id":444186}car-test:1>redis有......
  • MySQL数据库不可不学的一个数据库福利来了
    Spring常用注解redis视频集合,看完这些别说不会redis代码资料.zip代码资料解压密码:wosn.net第1章数据库简介-8-1[wosn.net].mp4第3章SQL语句规范-8-3[wosn.net].mp4第2章数据库的安装及配置-8-2.mp4第4章数据库的相关操作-8-4.mp4第10章测试字符串类型-8-10[wosn.net].mp4第11......
  • python用筛法输出指定范围素数个数
    1importtime2stime=time.time()3defq(n):4is_prime={x:Trueforxinrange(n+1)}#生成一个n个元素的字典key设置为0-n+1值设置为True5delis_prime[0]#删除06forcin(2,3,5,7):7forzinrange(2,int(n/2)):8......
  • 根号(n)求单个数欧拉函数
    #definelllonglongllola(lln) //求正整数n的欧拉函数(类似常规的素数判定){ llans=n; for(lli=2;i*i<=n;i++) //因为和因子有关,所以只需根号n内 { if(n%i==0) //找到一个因子i { ans=ans*(i-1)/i; //减去因子i相关的数 while(n%i==0)n/=i; //去除所有的因子i......
  • 某公司笔试题 - 求int型正整数在内存中存储时1的个数(附python代码)
    #输入一个int型的正整数,计算出该int型数据在内存中存储时1的个数。#数据范围:保证在32位整型数字范围内num=int(input("请输入一个正整数:"))#将输入的正整数转化成二进制num_bin=bin(num)print(num_bin)#将二进制字符串转化成数组nbl=list(num_bin)iflen(nbl)>0and......
  • 某公司笔试题 - 字符个数统计(附python代码)
    #编写一个函数,计算字符串中含有的不同字符的个数,字符在ASCII码范围内(0~127,包括0和127),换行表示结束符,不算在字符里,不在范围内的不作统计。多个相同的字符只计算一次。#例如:对于字符串abaca而言,有a,b,c三种不同的字符,因此输出3#数据范围:1<=n<=500str1=input("请输入一个字......
  • 找出数组中两个数的和等于给定目标值
    注意,输出的是数在列表中的索引,所以组织字典时用这个结构{list_value:list_index}deftwo_sum(nums,target):num_dict={}fori,numinenumerate(nums):complement=target-numifcomplementinnum_dict:return[num_dict[comp......
  • 代码随想录算法训练营第十六天| 104.二叉树的最大深度 111.二叉树的最小深度 222.
      104.二叉树的最大深度 (优先掌握递归)    卡哥建议:什么是深度,什么是高度,如何求深度,如何求高度,这里有关系到二叉树的遍历方式。大家要先看视频讲解,就知道以上我说的内容了,很多录友刷过这道题,但理解的还不够。   题目链接/文章讲解/视频讲解:https://programmerc......
  • 《剑指Offer》-57-和为 s 的两个数字
    双指针 vector<int>twoSum(vector<int>&nums,inttarget){ //题目中说了这是一个递增数组,而且我需要两个数字组成s vector<int>res; intsmallDigit=0,bigDigit=nums.size()-1; //这要结果存在,这两个指针就不会相等 //也不能相等,相等就是同一个数字用两......