难度:简单
配对交换。编写程序,交换某个整数的奇数位和偶数位,尽量使用较少的指令(也就是说,位0与位1交换,位2与位3交换,以此类推)。
示例1:
输入:num = 2(或者0b10) 输出 1 (或者 0b01)
示例2:
输入:num = 3 输出:3
提示:
num
的范围在[0, 2^30 - 1]之间,不会发生整数溢出。题解:
pythonclass Solution: def exchangeBits(self, num: int) -> int: if num == 1: return 2 n = bin(num).split('b')[1] list_n = list(n) if len(n) % 2 == 1: list_n = ['0'] + list_n for i in range(0,len(list_n)-1,2): list_n[i],list_n[i+1] = list_n[i+1],list_n[i] return int("".join(['0b']+list_n),2)
leetcode:面试题 05.07. 配对交换(python3解法)
心软且酷丶2024-10-31 15:19
相关推荐
昨天今天明天好多天2 分钟前
【Mac】Python 环境管理工具_.Switch14 分钟前
高效网络自动化:Python在网络基础中的应用lanboAI21 分钟前
基于yolov8的驾驶员疲劳驾驶检测系统,支持图像、视频和摄像实时检测【pytorch框架、python源码】南巷逸清风26 分钟前
LeetCode 101.对称二叉树纪怽ぅ39 分钟前
浅谈——深度学习和马尔可夫决策过程七月巫山晴40 分钟前
QChart中柱形图的简单使用并实现【Qt】阿丁小哥42 分钟前
【Python各个击破】numpy韭菜盖饭1 小时前
LeetCode每日一题685---冗余连接 II计算机学姐1 小时前
基于协同过滤算法的旅游网站推荐系统一个不喜欢and不会代码的码农1 小时前
力扣1381:设计一个支持增量操作的栈