Python数组翻转指定个数的元素
# 定义一个数组,并将指定的个数的元素翻转到数组的尾部
代码思路:
①第一步,我会先定义一个数字列表,比如 a = [1, 2, 3, 4, 5, 6, 7] ;
②第二步,我想要前两个元素放在a列表的最后,用列表的下标索引 a[0:2] 截取前两个元素;
③第三步,原来的元素和前两个元素位置交换 a[2::], a[0:2] = a[0:2], a[2::] ;
④第四步,输出最终的结果, print(a)
a = [1, 2, 3, 4, 5, 6, 7]
a[2::], a[0:2] = a[0:2], a[2::]
print(a)
注:我是一个新手,所以写案例都会用最直接简单的方法写,高级的语法我还不写。欢迎大家有更多更好的思路,大家共同进步。希望在这里能见证我在Pythond的成长,分享一句我很喜欢的话共勉,“如果可以,请看清自己,然后坚定起来吧。”
我把这个案例的原代码放在下面了。
def Rotate(arr, d, n):
"""
将长度为 n 的数组 arr 的前面 d个元素翻转到数组尾部
"""
for i in range(d):
temp = arr[0]
for i in range(n - 1):
arr[i] = arr[i + 1]
arr[n - 1] = temp
def printArray(arr, size):
for i in range(size):
print(f"{arr[i]}\t", end="")
def main():
# 定义一个数组
arr = [1, 2, 3, 4, 5, 6, 7]
# 指定翻转个数的元素
Rotate(arr, 2, len(arr))
printArray(arr, len(arr))
if __name__ == '__main__':
main()