1.概述
给定一个数组,将数组中的元素向右移动 上个位置,其中上是非负数。
迸阶:
-
可能想出重多的解决方案,至少有三种不同的方法可以解决这个问题。
-
你可以使用空间复杂度为0(1)的 原地 算法解决这个问题吗?
2.分析
首先参考一个类似的问题:【算法】旋转数组的最小数字
假设我有一个数组:【1,2,3,4,5,6,7】,假设K=3,那么意味着这个数组整体往右边移动了3个位置。【空,空,空,1,2,3,4,5,6,7】因为数组长度固定,所以会把后面三个数挤出来,然后这个数据会放到最前面,变成【5,6,7,1,2,3,4】
本文出自 csdn 九师兄,防伪标志,本文由九师兄唯一发布。原地址:https://blog.csdn.net/qq_21383435
2.1 方案1
第一种解法