毕设答辩顺利通过啦~ 给定一个整数数组 nums 和一个目标值 target,在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。 给定 nums = [2, 7, 11, 15], target = 9 用两层循环,遍历整个数组: 遍历数组元素,并将 target-nums[i] 及 下标i 存入字典,若 nums[j] 存在于字典中,则返回下标 j 和 其所对应的值。 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。 思路见代码:采用循环结构取出个位数,每循环一次,sum=sum*10+res 将整数转为字符串,进行step为-1的切片,再转为int类型的整数 Python 运算符 Python 切片
争取每日两道Easy题,快来一起学习吧~1. 两数之和
可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。
因为 nums[0] + nums[1] = 2 + 7 = 9
所以返回 [0, 1]1.1 暴力解法
空间复杂度:O(1),时间复杂度:O(n^2). def twoSum(self, nums: List[int], target: int) -> List[int]: for i in range(len(nums)): for j in range(i+1,len(nums)): if(target==(nums[i]+nums[j])): return [i,j] return none
1.2 字典容器法
空间复杂度:O(n) 时间复杂度:O(n)
Key
Value
targt-nums[i]
index
def twoSum(self, nums: List[int], target: int) -> List[int]: store={} for i in range(len(nums)): another=target-nums[i] if nums[i] in store: return [i,store[nums[i]]] else: store[another]=i return none
2. 整数翻转
e.g. 123→321 -123→-321 120→21
假设环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。2.1 数学求余解法
空间复杂度:O(1) 时间复杂度:O(n) def reverse(self, x: int) -> int: sum=0 newx=abs(x) while newx!=0: res=newx%10 sum=sum*10+res newx=newx//10 if x>=0: if sum <= 2**31-1: return sum else: return 0 else: if -sum >= -2**31: return -sum else: return 0
2.2 Python切片法
空间复杂度:O(1) 时间复杂度:O(n) def reverse(self, x: int) -> int: if x>=0: newx=int(str(x)[::-1]) if newx<=2**31-1: return newx else: return 0 if x<0: newx=-int(str(x)[1:][::-1]) if newx >= -2**31: return newx else: return 0
3. 收获
3.1 Python字典的基本操作
3.2 Python运算符
需要注意部分运算符与C语言的区别,如幂、除、整除、逻辑运算符:and or not.3.3 Python切片
Python中符合切片并且常用的有:列表,字符串,元组。
以列表为例:
格式:[开始:结束:步长]
开始:当步长>0时,不写默认0。当步长<0时,不写默认-1
结束:当步长>0时,不写默认列表长度加一。当步长<0时,不写默认负的列表长度减一
步长:默认1,>0 是从左往右走,<0是从右往左走。
即包含开始,不包含结束。
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算