RotateArray

来源:互联网 发布:手机发票制作软件 编辑:程序博客网 时间:2024/06/05 09:48
class Solution4 {//正确运行public void rotate(int[] nums, int k) {int n = nums.length;k = k % n;int start = 0;int period = k;while (start < period) {int bak = nums[start];int i = start;while (true) {int j = (i + n - k) % n;if (j == start)break;period = Math.min(period, j);nums[i] = nums[j];i = j;}nums[i] = bak;start++;}}}
public class Solution1 {//超时public void rotate(int nums[], int k) {int temp;int n = nums.length;for (int step = 0; step < k; step++) {temp = nums[n - 1];for (int i = n - 1; i > 0; --i) {nums[i] = nums[i - 1];}nums[0] = temp;}}


0 0
原创粉丝点击