为了账号安全,请及时绑定邮箱和手机立即绑定

使用arraycopy方法进行右循环移位java

使用arraycopy方法进行右循环移位java

紫衣仙女 2021-08-25 17:25:36
我需要有关如何在 Java 中使用 arraycopy 方法的帮助。我有一个字符数组,例如:[A B C D]并且我想向右执行循环移位,例如,如果循环移位为整数 2,则字符将向右移动两个位置,从而导致:[c、d、a、b]我想知道如何使用 arraycopy 方法实现这一点。在将数组向左移动一定数量的移位时,我设法实现了它,如下所示:System.arraycopy(sArray, leftShifts, leftShiftedArray, 0, n - leftShifts);System.arraycopy(sArray, 0, leftShiftedArray, n - leftShifts, leftShifts);我只是发现很难为权利做同样的事情。
查看完整描述

1 回答

?
翻过高山走不出你

TA贡献1875条经验 获得超3个赞

N-element 数组向左旋转一个元素k相当于将同一个数组向右旋转一个N-k元素。因此,所有你需要做的是替换leftShiftsn - rightShifts在公式中:

System.arraycopy(sArray, n - rightShifts, rightShiftedArray, 0, rightShifts);
System.arraycopy(sArray, 0, rightShiftedArray, rightShifts, n - rightShifts);


查看完整回答
反对 回复 2021-08-25
  • 1 回答
  • 0 关注
  • 134 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信