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

初始数据结构(加深对旋转的理解)

力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台备战技术面试?力扣提供海量技术面试资源,帮助你高效提升编程技能,轻松拿下世界 IT 名企 Dream Offer。icon-default.png?t=N7T8https://leetcode.cn/problems/rotate-array/submissions/

与字符数组的左旋的思路1一模一样。

数组nums包含从0n的所有整数,但其中缺了一个。请编写代码找出那个缺失的整数。你有办法在O(n)时间内完成吗?

注意:本题相对书上原题稍作改动

示例 1:

输入:[3,0,1]
输出:2

示例 2:
输入:
[9,6,4,2,3,5,7,0,1]

输出:

该题一定要注意时间复杂度。


int missingNumber(int* nums, int numsSize){int i,j,ans=0;;for(i=0;i<numsSize;i++){ans^=nums[i];}for(j=0;j<=numsSize;j++){ans^=j;}return ans;
}

力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台备战技术面试?力扣提供海量技术面试资源,帮助你高效提升编程技能,轻松拿下世界 IT 名企 Dream Offer。icon-default.png?t=N7T8https://leetcode.cn/problems/missing-number-lcci/submissions/

示例 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:

输入:nums = [-1,-100,3,99], k = 2
输出:[3,99,-1,-100]
解释: 
向右轮转 1 步: [99,-1,-100,3]
向右轮转 2 步: [3,99,-1,-100]

 代码实现:

void reverse(int*nums,int left,int right){while(left<right){nums[left]=nums[left]^nums[right];nums[right]=nums[left]^nums[right];nums[left]=nums[left]^nums[right];left++;right--;}
}
void rotate(int* nums, int numsSize, int k) {if(numsSize<k){k%=numsSize;}reverse(nums,numsSize-k,numsSize-1);reverse(nums,0,numsSize-k-1);reverse(nums,0,numsSize-1);
}

相关文章:

  • 深度学习猫狗分类 - python opencv cnn 计算机竞赛
  • SELinux refpolicy详解(13)
  • HDFS Java API 基本操作实验
  • 解决方案:Mac 安装 pip
  • 用23种设计模式打造一个cocos creator的游戏框架----(十)迭代器模式
  • Qt/C++音视频开发57-切换音视频轨道/切换节目流/分别切换音频视频轨道
  • java 有一个N位数字,各位加起来不超过M。
  • 【银行测试】金融项目+测试方法范围分析,功能/接口/性能/安全...
  • 【Vue3从入门到项目实现】RuoYi-Vue3若依框架前端学习——登录页面
  • 【ArcGIS Pro微课1000例】0051:创建数据最小几何边界范围(点、线、面数据均可)
  • 【Vue+Python】—— 基于Vue与Python的图书管理系统
  • 第一课【习题】HarmonyOS应用/元服务上架
  • 快速登录界面关于如何登录以及多账号列表解析以及config配置文件如何读取以及JsLogin模块与SdoLogin模块如何通信(4)
  • 数据结构第二次作业——递归、树、图【考点罗列//错题正解//题目解析】
  • Python处理Excel文件并与数据库匹配做拼接
  • 0基础学习移动端适配
  • axios 和 cookie 的那些事
  • CentOS 7 修改主机名
  • create-react-app项目添加less配置
  • es6--symbol
  • JavaScript DOM 10 - 滚动
  • Java新版本的开发已正式进入轨道,版本号18.3
  • JS基础篇--通过JS生成由字母与数字组合的随机字符串
  • learning koa2.x
  • leetcode-27. Remove Element
  • Markdown 语法简单说明
  • Redis的resp协议
  • web标准化(下)
  • 高性能JavaScript阅读简记(三)
  • 技术发展面试
  • 批量截取pdf文件
  • 实战|智能家居行业移动应用性能分析
  • 智能网联汽车信息安全
  • d²y/dx²; 偏导数问题 请问f1 f2是什么意思
  • 【运维趟坑回忆录 开篇】初入初创, 一脸懵
  • ​​​​​​​ubuntu16.04 fastreid训练过程
  • ​Linux·i2c驱动架构​
  • ​创新驱动,边缘计算领袖:亚马逊云科技海外服务器服务再进化
  • #大学#套接字
  • #鸿蒙生态创新中心#揭幕仪式在深圳湾科技生态园举行
  • (C++20) consteval立即函数
  • (LeetCode 49)Anagrams
  • (附源码)ssm航空客运订票系统 毕业设计 141612
  • (六)Hibernate的二级缓存
  • (全部习题答案)研究生英语读写教程基础级教师用书PDF|| 研究生英语读写教程提高级教师用书PDF
  • (三)elasticsearch 源码之启动流程分析
  • (四)Controller接口控制器详解(三)
  • (淘宝无限适配)手机端rem布局详解(转载非原创)
  • (一)spring cloud微服务分布式云架构 - Spring Cloud简介
  • (原创) cocos2dx使用Curl连接网络(客户端)
  • (转)机器学习的数学基础(1)--Dirichlet分布
  • **登录+JWT+异常处理+拦截器+ThreadLocal-开发思想与代码实现**
  • .gitattributes 文件
  • .net redis定时_一场由fork引发的超时,让我们重新探讨了Redis的抖动问题
  • .vue文件怎么使用_vue调试工具vue-devtools的安装