python值和引用——【LeetCode】RotateArray
来源:互联网 发布:mac的关闭快捷键 编辑:程序博客网 时间:2024/06/05 08:36
Rotate Array
Rotate an array of n elements to the right by k steps.
For example, with n = 7 and k = 3, the array [1,2,3,4,5,6,7]
is rotated to[5,6,7,1,2,3,4]
.
Note:
Try to come up as many solutions as you can, there are at least 3 different ways to solve this PRoblem.
Credits:
Special thanks to @Freezen for adding this problem and creating all test cases.
AC代码:(Python)
1 class Solution:2 # @param nums, a list of integer3 # @param k, num of steps4 # @return nothing, please modify the nums list in-place.5 def rotate(self, nums, k):6 n = len(nums)7 k = k % n8 nums[:] = nums[n-k:] + nums[:n-k]9
要注意一个问题:
A little important thing to be cautious:
nums[:] = nums[n-k:] + nums[:n-k]
can't be written as:
nums = nums[n-k:] + nums[:n-k]
on the OJ.
The previous one can truly change the value of old nums, but the following one just changes its reference to a new nums not the value of old nums.
因为题目要求的是:
@return nothing, please modify the nums list in-place.
类似的还有:
1 def purify(lsst):2 lst = lsst[:]3 for num in lsst:4 if num % 2 == 1:5 lst.remove(num)6 return lst
这是清除 list 中的奇数,要求不要在原输入上直接修改。
注意第二行不能 写成:
lst = lsst
而应该是:
lst = lsst[:]
这样才是值相同的两个list, 否则 lst = lsst 只是一个 list 的两个引用。
值 和 引用 的问题当属 Python 里的第一大坑。
阅读全文
0 0
- python值和引用——【LeetCode】RotateArray
- RotateArray
- leetcode189.RotateArray
- Python基础——变量、对象和引用
- Python 传值和引用总结
- python中的传值和传引用
- Python 值传递和引用传递
- python值传递和引用传递
- python 的值传递和引用传递
- python 引用和拷贝
- python 引用和复制
- python引用和复制
- python 引用和拷贝
- C++——左值引用和右值引用
- C++——左值引用和右值引用
- 【C++】基础知识—引用和指针引用
- Python对象引用和del删除引用
- python 对象拷贝——浅拷贝和深拷贝 之函数传递——值传递还是引用传递?
- 2017暑期工程训练day1_leetcode206_Reverse Linked List
- synchronized 和java.util.concurrent.locks.Lock的异同
- 位操作-leetcode 342 Power of Four
- Leetcode: 301.Remove Invalid Parentheses
- 2017暑期工程训练day1_leetcode2_Add Two Numbers
- python值和引用——【LeetCode】RotateArray
- Python类或者对象的属性设计
- tomcat查看GC信息
- 算法机ASM和算法流程图ASMc
- Eclipse将控制台输出信息保存为文件
- python 自动安装缺少模块
- Laravel基础-两种方式引入公共文件
- Round 422 C. Hacker, pack your bags!
- Delphi 获取文件类型函数