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

面试经典 150 题

文章目录

  • 6、轮转数组

6、轮转数组

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

示例 1:

输入: nums = [1,2,3,4,5,6,7], k = 3
输出: [5,6,7,1,2,3,4]
解释:
向右轮转 1 步: [7,1,2,3,4,5,6]
向右轮转 2 步: [6,7,1,2,3,4,5]
向右轮转 3 步: [5,6,7,1,2,3,4]
2、关键字
数组向后轮转变换
3、思路
先用k对n取模
思路一:使用辅助数组,时间复杂度O(N),空间复杂度O(N)
思路二:发现规律:先把整个数组逆置,之后把前k个元素逆置,之后把后边n- k个元素逆置
4、notes
多练
6、code


class Solution {
public:void reverse(vector<int>& nums, int i, int j) {while(i < j) {int tem = nums[i];nums[i] = nums[j];nums[j] = tem;     i++;j--;}}void rotate(vector<int>& nums, int k) {int n = nums.size();k %= n ;reverse(nums, 0, n - 1); // 整个数组逆置reverse(nums, 0,  k - 1); // 逆置前边的k个,reverse(nums, k, n - 1); // 逆置后边的n - k个}
};

相关文章:

  • 深入理解 Qt 的 `moveToThread`:提升多线程应用性能的关键
  • MySQL GROUP_CONCAT 函数详解与实战应用
  • 基于Java技术的B/S模式书籍学习平台
  • Python中的格式化输出
  • AntDesign上传组件upload二次封装+全局上传hook使用
  • 美国大带宽服务器租用优势和注意事项
  • git配置ssh-keygen -t rsa -c“xxxx@xxxx.com.cn出现Too many arguments.解决办法
  • ChatGPT提问提示指南PDF下载经典分享推荐书籍
  • react-fiber
  • C#运算符重载
  • flutter开发实战-Webview及dispose关闭背景音
  • c与c++ 常用的字符与字符串处理的接口介绍:
  • Xilinx FPGA:vivado关于fifo的一些零碎知识
  • 【K8s】【问题排查】k8s只能本地服务器访问服务,其他节点无法访问服务
  • crontab定时任务不执行原因排查
  • android 一些 utils
  • axios请求、和返回数据拦截,统一请求报错提示_012
  • CentOS 7 修改主机名
  • java架构面试锦集:开源框架+并发+数据结构+大企必备面试题
  • JS正则表达式精简教程(JavaScript RegExp 对象)
  • Linux Process Manage
  • Python3爬取英雄联盟英雄皮肤大图
  • react-core-image-upload 一款轻量级图片上传裁剪插件
  • SpiderData 2019年2月25日 DApp数据排行榜
  • Traffic-Sign Detection and Classification in the Wild 论文笔记
  • VuePress 静态网站生成
  • vue脚手架vue-cli
  • Vue学习第二天
  • XForms - 更强大的Form
  • 基于axios的vue插件,让http请求更简单
  • 前嗅ForeSpider采集配置界面介绍
  • 腾讯大梁:DevOps最后一棒,有效构建海量运营的持续反馈能力
  • #我与Java虚拟机的故事#连载18:JAVA成长之路
  • (01)ORB-SLAM2源码无死角解析-(66) BA优化(g2o)→闭环线程:Optimizer::GlobalBundleAdjustemnt→全局优化
  • (8)STL算法之替换
  • (delphi11最新学习资料) Object Pascal 学习笔记---第7章第3节(封装和窗体)
  • (阿里云在线播放)基于SpringBoot+Vue前后端分离的在线教育平台项目
  • (附源码)计算机毕业设计SSM基于java的云顶博客系统
  • (力扣)1314.矩阵区域和
  • (论文阅读23/100)Hierarchical Convolutional Features for Visual Tracking
  • (推荐)叮当——中文语音对话机器人
  • (转载)虚函数剖析
  • *算法训练(leetcode)第三十九天 | 115. 不同的子序列、583. 两个字符串的删除操作、72. 编辑距离
  • .gitattributes 文件
  • .NET Core WebAPI中封装Swagger配置
  • .NET Core引入性能分析引导优化
  • .NET Framework Client Profile - a Subset of the .NET Framework Redistribution
  • .NET命名规范和开发约定
  • /usr/lib/mysql/plugin权限_给数据库增加密码策略遇到的权限问题
  • [ 数据结构 - C++]红黑树RBTree
  • [ 物联网 ]拟合模型解决传感器数据获取中数据与实际值的误差的补偿方法
  • [2018][note]用于超快偏振开关和动态光束分裂的all-optical有源THz超表——
  • [AHK] WinHttpRequest.5.1报错 0x80092004 找不到对象或属性
  • [AIR] NativeExtension在IOS下的开发实例 --- IOS项目的创建 (一)
  • [C#]C# winform部署yolov8目标检测的openvino模型