Python学习笔记3-整数反转

题目:

给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。

示例 1:

输入: 123

输出: 321

示例 2:

输入: -123

输出: -321

示例 3:

输入: 120

输出: 21

注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−2^31, 2 ^31 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。

分析:

我们可以一次构建反转整数的一位数字。在这样做的时候,我们可以预先检查向原整数附加另一位数字是否会导致溢出。

反转整数的方法可以与反转字符串进行类比。

重复“弹出” x 的最后一位数字,并将它“推入”到 res 的后面。最后,res 将与 x 相反。

代码:

代码分析:

abs()函数的作用是取绝对值,limit的作用是存储界限,实现反转的代码是:

r=r*10+y%10

Python运算符介绍:

(a & b)

按位与运算符:参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0

输出结果 12 ,二进制解释: 0000 1100

(a | b)

按位或运算符:只要对应的二个二进位有一个为1时,结果位就为1。

输出结果 61 ,二进制解释: 0011 1101

(a ^ b)

按位异或运算符:当两对应的二进位相异时,结果为1

输出结果 49 ,二进制解释: 0011 0001

(~a )

按位取反运算符:对数据的每个二进制位取反,即把1变为0,把0变为1 。~x 类似于 -x-1

输出结果 -61 ,二进制解释: 1100 0011,在一个有符号二进制数的补码形式。

a << 2

左移动运算符:运算数的各二进位全部左移若干位,由 << 右边的数字指定了移动的位数,高位丢弃,低位补0。

输出结果 240 ,二进制解释: 1111 0000

a >> 2

右移动运算符:把">>"左边的运算数的各二进位全部右移若干位,>> 右边的数字指定了移动的位数

输出结果 15 ,二进制解释: 0000 1111

python赋值运算符:

*=乘法赋值运算符c *= a 等效于 c = c * a

/=除法赋值运算符c /= a 等效于 c = c / a

%=取模赋值运算符c %= a 等效于 c = c % a

**=幂赋值运算符c **= a 等效于 c = c ** a

//=取整除赋值运算符c //= a 等效于 c = c // a

运行结果:

python反转一个三位数的整数_Python学习笔记3-整数反转相关推荐

  1. python输入一个三位数输出它的百位十位个位_python输入一个水仙花数(三位数) 输出百位十位个位实例...

    我就废话不多说了,大家还是直接看代码吧! # python输入一个水仙花数(三位数) 输出百位十位个位 """ 从控制台输入一个三位数num, 如果是水仙花数就打印num ...

  2. python反转一个三位数的整数,python反转一个三位整数的多种实现方案

    在LintCode上练习遇到这个问题,查阅资料找到多种方法,总结如下. 输入 输出 123 321 第一种:整数方法取余取整实现 class Solution: """ ...

  3. python输入一个三位数输出百位十位个位_python输入一个水仙花数(三位数) 输出百位十位个位实例...

    我就废话不多说了,大家还是直接看代码吧! # python输入一个水仙花数(三位数) 输出百位十位个位 """ 从控制台输入一个三位数num, 如果是水仙花数就打印num ...

  4. python输入一个三位数、输出它的逆序数_从键盘任意输入一个3位整数

    从键盘任意输入一个3位整数,编程计算并输出它的逆序数 程序哪里错了??为什么输出的是一个长长的负数 编写程序,输入一个3位正整数, www.zhiqu.org     时间: 2020-11-24 # ...

  5. python输入一个三位数、输出它的逆序数值_c语言 从键盘输入一个三位数,输出该数的逆序数。c语言中从键盘输入一个三位整数...

    c语言 从键盘输入一个三位数,输出该数的逆序数. c语言中从键盘输入一个三位整数 www.zhiqu.org     时间: 2020-12-08 c语言中从键盘输入一个三位数,输出该数的逆序数,可以 ...

  6. python计算一个三位数个位数之和

    #(1)输入一个三位数 n = input("请输入一个三位数") n = int(n) #将 字符串类型 转成 数值 456 #(2)得到百位b100 b100 = n // 1 ...

  7. python输入一个三位数_Python 三位一并法

    这两天帮同学解了一些题目,这里总结一下算法. 0x00 题目 请写一个 Python 程序实现实数的「三位一并法」与「四位一并法」.输入一个八进制小数,利用三位一并法将其转换为二进制实数,并输出,再利 ...

  8. Lintcode--5(37)--反转一个三位数

    1.题目 反转一个只有3位数的整数. 123 反转之后是 321.       900 反转之后是 9. 2.我的解答 class Solution { public:/*** @param numb ...

  9. python输入一个三位数的整数、求该数的3个数字之和_Python3 数字(Number)

    Python 数字数据类型用于存储数值. 数据类型是不允许改变的,这就意味着如果改变数字数据类型的值,将重新分配内存空间. 以下实例在变量赋值时 Number 对象将被创建: var1 = 1 var ...

最新文章

  1. 芬兰阿尔托大学人工智能实验室程路组博士生招聘-肠道菌群进化与人类疾病等方向...
  2. 用GrabCut进行前景检测(对书中代码进行改进)Python
  3. c# datagridview表格控件常用操作
  4. Asp.Net Core(.net内核)
  5. Node.js对MongoDB进行增删改查操作
  6. Unity 脚本生命周期流程图
  7. Linux查看分区文件系统类型总结
  8. android7.0+关闭wifi连接CA验证
  9. 本周Asp.net源码更新(6.25-6.29)
  10. 蓝牙鼠标windows linux,在Deepin和Windows 10双系统中蓝牙4.0鼠标共享使用的方法
  11. .NET框架设计(1)
  12. 高精地图应用(四)横向定位
  13. Lagrange Multiplier Theorem——候选人定理
  14. Java 16进制求和
  15. Tensorflow2.0版本下如何实现Kronecker积
  16. 诗琳通:中泰友谊使者,曾在汶川地震时曾为汶川灾区捐款1100万
  17. 画一个单实线,方向可以定制
  18. 直播卖货系统,使用数据库查询缓存
  19. sql 2017 机器学习_使用R和SQL Server 2017进行机器学习
  20. oracle9i oci driver,Oracle连接 Oracle 的OCI Driver 和 Thin Driver的区别

热门文章

  1. 标题|服务器标题|服务器名称|服务器IP|服务器端口|是否自动展开(0不展开,1自动展开)|微端IP|微端端口(0表示不使用微端)|安全盾防火墙端口(0表示不使用防火墙)|防火墙类型,0=安全盾防火墙
  2. 二叉树如何进行快速搜索
  3. Javascript 中 callee 和 caller
  4. 意欲取代WiFi,小基站激发无线市场大变革
  5. html 批量依次打开网页,傲游浏览器批量一键打开网页的几种方法
  6. 2009年中国电脑病毒疫情及互联网安全报告(图)
  7. android 车载安富蓝牙电话开发,为了进一步助力物联网产品的开发,安富利研发安卓 9.0 操作系统...
  8. 购车分期系统-智能风控体系,有效控制贷款风险
  9. 基于Android社区物业便民服务小区APP设计
  10. 出现报错qt disassembler ntdll DbgBreadPoint