刷题---轮转数组
本题来自力扣刷题:轮转数组
- 首先我们来看一下题目描述
解题思路:首先创建一个新的数组,将后面k个数据数据放到新数组前面,将size-1个数据放在剩下的空间中,再把新数组的数据赋值给nums。 - 看下图更好理解
- 代码展示
void rotate(int* nums, int numsSize, int k) {
//申请一个新的空间
int newArr[numsSize];
//数组中的后k个数据放在数组前面
//原来的数组的前size-k个数据放到剩下的空间
for(int i =0 ; i < numsSize ; i++)
{
newArr[(i + k) % numsSize] = nums[i];
}
//将newArr的数据放到nums中
for(int i = 0 ; i < numsSize ; i++)
{
nums[i] = newArr[i];
}
}
原文地址:https://blog.csdn.net/weixin_63997543/article/details/143681965
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!