原题:
给定一个整数数组 nums,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。
例如:nums =[1,0,-1,2,3] k=1
预期结果:nums = [3,1,0,-1,2]
k=2
预期结果:nums = [2,3,1,0,-1]
以此类推。。。
【本文思路解析】:
1.不实用额外的数组,会多一部分开销;
2.每次轮转,位置移动1位,共计移动k次;
3.时间复杂度O(K*N)n=数组的长度;(貌似也不好)
【JAVA代码】:
public class RotateArray { //[1,0,-1,2,3] public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int k = scanner.nextInt(); scanner.nextLine(); String[] strings = scanner.nextLine().split(","); int len = strings.length; int[] strToArray = new int[len]; for (int i = 0; i < len; i++) { if(strings[i].contains("[")){ strings[i] &标签:面试题,轮转,scanner,nums,int,数组,strings From: https://blog.csdn.net/m0_37828130/article/details/137198649