在Python中,copy的是内存地址,引用的是列表的引用地址,列表里存的是各个元素的地址
关键的是,对于Python来说,只要列表里的具体值没有变,就不会牵扯到新的内存的扩建
一、题目
二、代码
思想:
使用 Python的话,由于列表的特性,不使用 copy 方法新建列表,内存大小不会变,所以你就算使用两个列表,结果也是正确的
唯一需要注意的就是输出不能有多余空格,这时可以使用 字符串的 join 方法,很有用
n,m = map(int,input().split())
num1 = list(input().split())
num2 = []
for i in range(n):
place = (i+m)%n
num2.insert(place,num1[i])
print(' '.join(num2))
这个方法比较巧妙
n,m = map(int,input().split())
num1 = list(input().split())
m1 = num[n-m:]
m2 = num[:n-m]
m = m1 + m2
print(' '.join(m))