Leetcode刷题(位运算)

一、 476. 数字的补数

在这里插入图片描述

根据题意写即可

代码

class Solution:
    def findComplement(self, num: int) -> int:
        l = list(bin(num)[2:])
        for i in range(len(l)):
            if l[i]=='0':
                l[i]='1'
            else:
                l[i]='0'
        return int("0b"+"".join(l),2)

位运算

class Solution:
    def findComplement(self, num: int) -> int:
        i = ans = 0
        while num:
            if not num & 1:
                ans += 1 << i
            num >>= 1
            i += 1
        return ans

二、191. 位1的个数

在这里插入图片描述

代码

数二进制形式1的个数

class Solution:
    def hammingWeight(self, n: int) -> int:
        return bin(n).count('1')

位运算

如果n&1=1,则n的最右一位为1
如果n&1=0,则n的最右一位为0
逐位求1,求和

class Solution:
    def hammingWeight(self, n: int) -> int:
        ans = 0
        while n:
            ans += n&1
            n >>= 1
        return ans

三、693. 交替位二进制数

在这里插入图片描述

代码

class Solution:
    def hasAlternatingBits(self, n: int) -> bool:
        s = bin(n)[2:]
        for i in range(len(s)-1):
            if s[i]+s[i+1]=="00" or s[i]+s[i+1]=="11":
                return False
        return True

位运算

class Solution:
    def hasAlternatingBits(self, n: int) -> bool:
        return not (a := n ^ (n >> 1)) & (a + 1)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/545059.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Android Surface的跨进程绘制,如何绘制xml布局给Surface,全网独一份

工作中遇到了这样一个需求 需求&#xff1a;需要将一个自定义View或者自定义布局通过跨进程方式传递给第二个应用来展示&#xff0c;第一个应用负责布局的渲染&#xff0c;第二个应用不需要关心第一个应用的业务和实现&#xff0c;仅提供SurfaceView占位及展示 方案&#xff…

AliyunCTF 2024 - BadApple

文章目录 前言环境搭建漏洞分析漏洞利用参考 前言 本文首发于看雪论坛 https://bbs.kanxue.com/thread-281291.htm 依稀记得那晚被阿里CTF支配的恐惧&#xff0c;今年的阿里CTF笔者就做了一道签到PWN题&#xff0c;当时也是下定决心要学习 jsc pwn 然后复现这道 BadApple 题目…

30元腾讯云服务器搭建幻兽帕鲁Palworld多人联机游戏,畅玩

幻兽帕鲁太火了&#xff0c;官方palworld服务器不稳定&#xff1f;不如自建服务器&#xff0c;基于腾讯云幻兽帕鲁服务器成本32元全自动部署幻兽帕鲁服务器&#xff0c;超简单有手就行&#xff0c;全程自动化一键部署10秒钟即可搞定&#xff0c;无需玩家手动部署幻兽帕鲁游戏程…

Python基础整理(一万三千字)(一)

目录 一、Python解释器 解释器的作用&#xff1a; 下载Python解释器&#xff1a; 安装Python解释器&#xff1a; 二、注释 三、变量 定义变量&#xff1a; 标识符&#xff1a; 命名习惯&#xff1a; 变量使用&#xff1a; 变量的数据类型&#xff1a; 四、输出 格式化输出 …

聚酰亚胺PI材料难于粘接,用什么胶水粘接?那么让我们先一步步的从认识它开始(二十六): 聚酰亚胺PI材料为什么难于粘接

聚酰亚胺PI材料为什么难于粘接 聚酰亚胺&#xff08;PI&#xff09;材料难以粘接主要是由于其特殊的化学结构和物理性质&#xff1a; 化学稳定性&#xff1a;聚酰亚胺PI材料具有出色的化学稳定性&#xff0c;这使其对大多数化学溶剂和酸碱溶液都表现出良好的抵抗性&#xff0c;…

23电赛D题 CORDIC算法实践——Chisel计算对数函数

一、介绍 在本专栏之前的文章中:用Chisel快速搭建FFT流水线电路Chisel实践 —— 短时傅里叶变换模块的实现与测试 已经介绍到了如何使用Chisel开发FFT运算模块和STFT模块&#xff0c;此篇文章将详细介绍如何使用Chisel进行对数运算模块的开发。 如何使用硬件语言实现对数运算&…

得帆用户有福了!全新社区论坛携手AI助手华丽上线,积分好礼等你拿!

盼望着&#xff0c;盼望着&#xff0c;春天的脚步近了&#xff0c;得帆云社区迎来全新升级&#xff0c;社区论坛携手AI知识库助手上线了&#xff01; 得帆云官方社区论坛&#xff1a; https://edu.definesys.cn/community/community-forum 您也可以点击本文末尾左下方“阅读…

.rdl.data是什麼文件

https://learn.microsoft.com/zh-cn/sql/reporting-services/tools/reporting-services-in-sql-server-data-tools-ssdt?viewsql-server-ver16&redirectedfromMSDN

如何在Odoo 17库存中通过批次号和序列号追踪产品

在Odoo 17库存管理中&#xff0c;通过批次号和序列号追踪产品是一种确保产品从生产到销售全程可追溯的重要方式。在产品打包时或生产过程中会分配这些编号。批次号是指应用于具有相似属性的一组产品的一系列数字或代码&#xff0c;而序列号则是分配给特定单一物品的独特编号。O…

MATLAB5:数据和函数的可视化

文章目录 一、实验目的二、实验内容三、仿真结果四、实践中遇到的问题及解决方法 一、实验目的 1. 掌握基本的二维绘图中曲线图的绘制方法。   2. 掌握三维绘图中曲面图的绘制方法。   3. 掌握三维绘图中网线图的绘制方法。   4. 了解三维表面图的绘制方法。   5. 了解…

【Java框架】Mybatis教程(一)——环境搭建及基本CRUD操作

目录 持久化与ORMORM&#xff08;Object Relational Mapping&#xff09;ORM解决方案包含下面四个部分 MyBatis简介特点MyBatis框架优缺点优点缺点 搭建MyBatis开发环境步骤1. 创建Maven工程&#xff0c;导入MyBatis依赖的组件2. 编写MyBatis核心配置文件(mybatis-config.xml)示…

【C 数据结构】静态链表

文章目录 【 1. 基本原理 】1.1 静态链表中的节点1.2 备用链表 【 2. 静态链表的创建 】2.1 实例1 - 创建静态链表&#xff0c;指定值2.2 实例2 - 创建静态链表&#xff0c;默认值 【 3. 静态链表 添加元素 】【 4. 静态链表 删除元素 】【 5. 静态链表 查找元素 】【 6. 静态链…

腾讯EdgeOne产品测评体验—基于EO新特性与传统CDN的对比以凸显EO绝对优势【以导航站为例】

精益求精&#xff0c;卓越非凡。 ——《论语集注》 EdgeOne 作为腾讯云下一代的 CDN &#xff0c;提供域名解析、动静态智能加速、TCP/UDP 四层加速、DDoS/CC/Web/Bot 防护、边缘函数计算等一体化服务&#xff0c;也支持用户按业务需求&#xff0c;配置自定义复杂访问控制规…

Qt配置外部库(Windows平台)

这里以C的外部库nlopt为例子来示范&#xff0c;右键工程选择添加库&#xff0c;然后选择库文件的目录&#xff08;dll.a&#xff09;&#xff0c;会自动设置好包含路径&#xff08;一般是include的目录&#xff09;&#xff0c;添加库&#xff08;最下面一行&#xff09; &…

【Java】maven传递依赖冲突解决

传递依赖的概念&#xff1a; 传递依赖:&#xff1a; A.jar 依赖 B.jar, B.jar 依赖 C.jar, 这个时候我们就说B是A的直接依赖, C是A传递依赖; 传递依赖可能会产生冲突: 联系着上面, 新导入一个jar包D.jar, D依赖C.jar, 但是B依赖的1.1版本, 而D依赖的是1.2版本, 这时候C这个j…

ROS2从入门到精通1-3:详解ROS2动作通信机制与自定义动作

目录 0 专栏介绍1 动作通信模型2 动作模型实现(C)3 动作模型实现(Python)4 自定义动作 0 专栏介绍 本专栏旨在通过对ROS2的系统学习&#xff0c;掌握ROS2底层基本分布式原理&#xff0c;并具有机器人建模和应用ROS2进行实际项目的开发和调试的工程能力。 &#x1f680;详情&a…

设计模式——观察者模式17

观察者模式指多个对象间存在一对多的依赖关系&#xff0c;当一个对象的状态发生改变时&#xff0c;所有依赖于它的对象都得到通知并被自动更新。这种模式有时又称作发布-订阅模式。 中介者模式是N对N的双向关系。观察者模式是1对N的单向关系。 设计模式&#xff0c;一定要敲代码…

【Linux网络编程】UDP协议

UDP协议 1.再谈端口号端口号划分认识知名端口号(Well-Know Port Number)两个问题netstatpidof 2.UDP协议2.1UDP的特点2.2面向数据报2.3UDP的缓冲区2.4UDP使用注意事项2.5基于UDP的应用层协议 喜欢的点赞&#xff0c;收藏&#xff0c;关注一下把&#xff01; 1.再谈端口号 端口…

如何选择适用于Mac的文件恢复软件?适用于 Mac 的最佳数据恢复软件清单

有人会说&#xff0c;我们的数字生活正变得几乎和我们的物理生活一样重要。我们在线工作&#xff0c;将记忆保存在数码照片库中&#xff0c;在信使中交流&#xff0c;并保留各种文档的数字扫描。 每个人都知道备份是必不可少的。建议每天至少同步一个数字备份&#xff08;例如…

Spring Boot 学习(3)——Spring Initializr 创建项目问题解决

产生问题的原因&#xff0c;各种的版本都较老&#xff0c;所以导致出现问题。目前暂未打到合适的教程&#xff0c;按老教程学起来先。 小白瞎学&#xff0c;大神勿喷&#xff01; 再次强调环境&#xff1a;maven 3.3.9、jdk 1.8、idea 2017、Spring 4.3.13、Spring Boot 1.5.…