最近在LeetCode上刷算法题,发现如果直接搬运LeetCode上的代码到pycharm上,会有不规范问题,导致运行不成功.
下面以 <977. 有序数组的平方> 这道题为例:给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。
在LeetCode上的运行代码是这样的
class Solution:
def sortedSquares(self, nums: List[int]) -> List[int]:
n = len(nums)
i,j,k = 0,n - 1,n - 1
ans = [-1] * n
while i <= j:
lm = nums[i] ** 2
rm = nums[j] ** 2
if lm > rm:
ans[k] = lm
i += 1
else:
ans[k] = rm
j -= 1
k -= 1
return ans
现在需要在pycharm上面运行,只需在代码底部添加上这么一句代码:
a = Solution()
print(a.sortedSquares([-4, -1, 0, 3, 10]))
在pycharm上运行的结果如下图:
Tips:此处的 List[int]
这是新增的语法,为了说明参数和返回值的数据类型
比如这里返回的是 int类型
对代码运行没有影响,可以写成下面这种:
class Solution:
def sortedSquares(self,nums):