当前位置: 首页 > news >正文

LeetCode|Day29|1009. 十进制整数的反码|Python刷题笔记

LeetCode|Day29|1009. 十进制整数的反码|Python刷题笔记

🗓️ 本文属于【LeetCode 简单题百日计划】系列
👉 点击查看系列总目录 >>


📌 题目简介

题号:1009. 十进制整数的反码
难度:简单
题目链接:点击跳转


🧾 题目描述

给你一个十进制整数 n,返回其二进制表示的反码所对应的十进制整数。

反码规则是:把二进制表示中每一位 0110

示例:

输入:n = 5(即二进制为 101)
输出:2(反码为 010,等于十进制的 2)

💡 解法:构造掩码异或

class Solution:def bitwiseComplement(self, n: int) -> int:if n == 0:return 1mask = 1while mask <= n:mask = (mask << 1) | 1  # 构造全为1的掩码return n ^ mask  # 异或得到反码

🧠 我的理解

  • 使用掩码构造技巧:构造一个比 n 大,且所有位都是 1 的数;
  • 利用 ^ 异或运算:相同为 0,不同为 1,从而实现反转;
  • 特殊处理边界:0 的反码是 1。

📌 基础语法复习:

  • << 左移位运算符,相当于乘 2;
  • | 按位或运算;
  • ^ 异或运算符,常用于翻转二进制;
  • 位运算是刷题中提高性能的重要工具。

📌 返回总目录:点我回目录

http://www.dtcms.com/a/304040.html

相关文章:

  • 服装行业SaaS系统有哪些
  • 【C++】指针
  • 基于Coze平台的自动化情报采集与处理引擎—实现小红书图文到飞书的端到端同步
  • 用 Python 轻松实现时间序列预测:Darts 时间序列混合器(TSMixer)Time Series Mixer
  • WAIC 2025观察:昇腾助力AI融入多元化生活场景
  • sqli-labs通关笔记-第25关GET字符注入(过滤or和and 脚本法)
  • 数据手套五指触觉灵巧手遥操作方案
  • Hyperchain安全与隐私机制详解
  • Windows 下使用 Ollama 调试大模型
  • 故障排除---Operator部署Prometheus无法NodePort访问
  • zoho crm为什么xx是deal的关联对象但是调用函数时报错说不是关联对象
  • 译|生存分析Survival Analysis案例入门讲解(一)
  • 电磁兼容(EMC):整改案例(十三)屏蔽外壳开孔解决433MHz无线通信问题
  • 【硬件-笔试面试题】硬件/电子工程师,笔试面试题-45,(知识点:负反馈的作用,基础理解,干扰和噪声的抑制)
  • React--》实现 PDF 文件的预览操作
  • WisFile(文件整理工具) v1.2.19 免费版
  • 自然语言处理NLP(3)
  • Mac m系列芯片安装node14版本使用nvm + Rosetta 2
  • 【第四章:大模型(LLM)】01.神经网络中的 NLP-(3)文本情感分类实战
  • 网络安全运维面试准备
  • 全自动植树机solidwoeks图纸cad【7张】三维图+设计说明说
  • 第二十二天(数据结构,无头节点的单项链表)
  • 去掉ansible的相关警告信息
  • RK3568下的进程间广播通信:用C语言构建简单的中心服务器
  • 人工智能驱动的自动化革命:重塑工作与社会的未来图景
  • XtestRunner一个比较好用好看的生成测试报告的工具
  • AI Agent推动搜索引擎优化自动化进程
  • python-网络编程
  • 【刷题】东方博宜 1503-排序 容器排序
  • 【数据结构】真题 2016