当前位置: 首页 > news >正文

力扣189:轮转数组

力扣189:轮转数组

  • 题目
  • 思路
  • 代码

题目

给定一个整数数组 nums,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。

思路

这道题的关键是如何确认移动后的元素的位置,首先数组的容量是不变的,那么我们是否可以假装数组在往后延申,那么每个元素的位置只需要加k即可。同时又因为数组的容量是不变的也就是元素的个数是不变的,那么我们将+k后的下标再对容量进行取模那不得到移动后的元素的位置了吗。所以我们需要使用原数组初始化一个新的数组,之后再进行计算得到元素的新位置并将对应到新数组的各位置下。

代码

class Solution {
public:void rotate(vector<int>& nums, int k) {int n = nums.size();vector<int> res(nums);for(int i = 0;i < n;i++){//新数组的新位置存储旧元素的值res[(i+k)%n] = nums[i];}swap(res,nums);}
};
http://www.dtcms.com/a/296670.html

相关文章:

  • 5 个适合创意创作的网站,灵感不设限
  • 基于markdown封装的前端文档编辑工具,markdown.js的解析与应用
  • 蚁群优化算法(ACO)求解旅行商问题(TSP)
  • 碳油 PCB 技术解析:高精度制造与多场景应用实践
  • Python爬虫案例:Scrapy+XPath解析当当网网页结构
  • Spring Boot 3整合Spring AI实战:9轮面试对话解析AI应用开发
  • FreeRTOS—计数型信号量
  • 亚马逊Prime Day变革:精细化运营时代的号角
  • 基础05-Java控制流程:掌握if-else、switch和循环语句
  • 使用adb 发送广播 动态改变app内的值
  • 【PyTorch】图像二分类项目-部署
  • 【数字IC验证学习------- SOC 验证 和 IP验证和形式验证的区别】
  • NOTEPAD!NPCommand函数分析之comdlg32!GetSaveFileNameW--windows记事本源代码分析
  • 暑假集训篇之并发处理①练习题
  • prometheus监控k8s的metric详解-01-apiserver部分-05-其他
  • 局域网TCP通过组播放地址rtp推流和拉流实现实时喊话
  • 猎板碳油 PCB和普通PCB的区别
  • 【OpenCV实现多图像拼接】
  • kafka消费者组消费进度(Lag)深入理解
  • Redis--哨兵机制详解
  • Linux C:预处理命令
  • 225. 用队列实现栈
  • markdown学习笔记(个人向) Part.2
  • Redis高可用架构演进面试笔记
  • C#解析JSON数据全攻略
  • SpringBoot框架,不同环境中实体类对应不同的表
  • MySQL workbench的使用
  • Django 科普介绍:从入门到了解其核心魅力
  • 【Python】Python多线程爬虫实战:从基础原理到分布式架构实现
  • RCLAMP0512TQTCT 升特半导体 TVS二极管 12通道全防护芯片 以太网/PLC控制/5G基站专用