5.21leetcode练习
两数之和
题目

新手司机上路,光荣翻车,没想出来。借了别人的答案,自行领会
答案

整数反转
题目

思路及答案
反转就是将数的顺序倒过来,那么就可以通过“除10取余”的方式,将末尾数一个个提出来,放到输出的字符串中,再将字符串转成整型返回结果。注意点如下:
- 考虑正负数:正数可直接按思路操作,负数就需要先用绝对值按正数方式算,最后将运行结果取反数
- 32位:需要考虑反转后的数字在范围[-2**32,2**32-1]内
class Solution:
def reverse(self, x: int) -> int:
x_str = str(x) # 将整型的x转变成字符
output = '' # 先定义返回结果为空字符串
# 判断正负
if x_str[0] == '-':
x = abs(x) # 将负数取绝对值
for count in range(len(x_str)-1):
output += str(x % 10) # 用“+”做字符串拼接
x //= 10 # 将数取整后循环
output = -int(output) # 结果转变回负数
else:
for count in range(len(x_str)):
output += str(x % 10)
x //= 10
# 判断反转后的结果是否在[-2**32,2**32-1]内
if -(2**31) <= int(output) <= (2**31-1):
return(int(output))
else:
return(0)
总结:代码中有重复代码,还有很大的精简空间
回文数
题目

思路及答案
回文数的特点:
第一位(下标0)与最后一位(下标-1)相等,两下标相加为-1
第二位(下标1)与倒数第二位(下标-2)相等,两下标相加为-1
........
所以回文数两相等的下标之和相加为-1
class Solution:
def isPalindrome(self, x: int) -> bool:
'''将整数转化成字符串来解决的方式'''
x_str = str(x)
for index in range(len(x_str)//2):
if x_str[index] != x_str[-1-index]:
return(False)
else:
return(True)
总结:进阶中要求不用字符串,这里用了字符串,还有待改进
希望每天进步一点点
5.21leetcode练习的更多相关文章
随机推荐
- Spark之安装和使用
Scala安装 Spark使用Scala开发,安装的Scala版本必须和Spark使用的版本一致,否则使用Scala编写的Spark任务会有兼容性问题 可以到Spark官网查看确定Scala版本,或者 ...
- ms sql server 系统表详细说明
sysaltfiles 主数据库 保存数据库的文件 syscharsets 主数据库字符集与排序顺序 sysconfigures 主数据库 配置选项 syscurconfigs 主数据 ...
- session知识点总结
1.session生成条件是怎样的?是登陆成功才生成?还是请求进来就生成session和sessionid? 答:Tomcat只要进来请求,就会生成session,同一个ip request来源用的都 ...
- 程序员之---C语言细节20(符号和有符号之间转换、两数相加溢出后数值计算)
主要内容:无符号和有符号之间转换.两数相加溢出后数值计算 #include <stdio.h> /* 这个函数存在潜在漏洞 */ float sum_elements(float a[], ...
- Rsync命令的使用
Rsync的命令格式能够为下面六种: rsync [OPTION]- SRC DEST rsync [OPTION]- SRC [USER@]HOST:DEST rsync [OPTION]- [US ...
- HDU 5358 多校第6场 First One
First One Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) Tota ...
- python练习-跳出多层循环和购物车
跳出多层循环:三层循环,最里层直接跳出3层 在Python中,函数运行到return这一句就会停止,因此可以利用这一特性,将功能写成函数,终止多重循环 def work(): for i in ran ...
- 从一个小demo开始,体验“API经济”的大魅力
写在前面 “API经济”这个词是越来越火了,但是"API经济"具体指的是什么,相信很多人还没有个明确的认识.不过今天我可不打算长篇大论的去讲解一些概念,我们就以“电话号码归属地查询 ...
- 第二课 MongoDB 数据模型
1.课程大纲 本课程主要介绍MongoDB数据模型相关知识.包含文档.集合与数据库的基本概念.用法及命名规则:MongoDB主要的数据类型介绍以及MongoDB Shell的简单介绍与使用. 文档 ( ...
- 自己制作Android包括@hide接口的SDK
Android系统存在一些系统级应用与framework代码耦合较深,编译的时候依赖非常多类里面的@hide接口.这类应用怎么来编译呢?首先我们须要制作一份包括Hide接口的SDK,方法例如以下(以a ...