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

空间数据云网站什么样企业需要网站建设

空间数据云网站,什么样企业需要网站建设,wordpress 完整搬家,删除百度收录网站1. 189 轮转数组(规律) 链接:题目链接 题解: 题解 时间复杂度O(n): k n * len x (len等于数组长度),n * len 可以忽略掉(将数组向右轮转n * len次,数组不会发生任何变化&#xff…

1. 189 轮转数组(规律)

链接:题目链接
题解

题解 时间复杂度O(n)

  1. k = n * len + x (len等于数组长度),n * len 可以忽略掉(将数组向右轮转n * len次,数组不会发生任何变化),所以真正需要处理的轮转次数 x = k % len
  2. 数组像右轮转x次 = 尾部x个元素移动到数组头部 + 其余元素向右移动
  3. 尾部x个元素移动到数组头部:先将数组反转,再将[0, x - 1]下标元素反转
  4. 其余元素向右移动:先将数组反转,再将[x, len - 1]下标元素反转

代码

class Solution {public void rotate(int[] nums, int k) {int len = nums.length;k = k % len;swapRange(nums, 0, len - 1);swapRange(nums, 0, k - 1);swapRange(nums, k, len - 1);}private void swapRange(int[] nums, int l, int r) {while(l < r) {int temp = nums[l];nums[l] = nums[r];nums[r] = temp;l ++;r --;}}
}

2. 238 除自身以外数组的乘积(公式 + 规律)

链接:题目链接
题解

题解 时间复杂度O(n)

  1. answer[i] = nums 中除 nums[i] 之外其余各元素的乘积 = 所有乘积 / nums[i](nums[i]=0的情况需要特殊讨论)
  2. 遍历数组维护所有元素的乘积
  3. 注意:当nums[i]=0 && 0的个数>1时,answer数组都是0
  4. 注意:当nums[i]=0 && 0的个数=1时,answer[i] = 非0数的乘积,answer[j] = 0 (j != i)
  5. 其他情况参考1

代码

class Solution {public int[] productExceptSelf(int[] nums) {// 0的个数 个数 > 1 直接返回0数组 个数 == 0 乘积不算0 记录0下标 个数 == 0 直接算0下标int len = nums.length;int zeroCount = 0;int zeroIndex = -1;int allMultiplicationResult= 1;for (int i = 0; i < len; ++ i) {if (nums[i] == 0) {zeroCount ++;zeroIndex = i;} else {allMultiplicationResult *= nums[i];}}int[] ans = new int[len];if (zeroCount > 1) {return ans;} if (zeroCount == 1) {ans[zeroIndex] = allMultiplicationResult;return ans;}for (int i = 0; i < len; ++ i) {ans[i] = allMultiplicationResult / nums[i];}return ans;}
}

3. 41 缺失的第一个正数(规律 + hash)

链接:题目链接
题解

题解 时间复杂度O(n)

  1. 当nums数组长度为n时,缺失的最小整数的最大值是n+1,例如最极端的情况[1, 2, 3] 那么确缺失的最小整数 = 4
  2. 从1遍历至n,hash存储出现过的值,如果i值 不存在hash中,那么就是缺失的最小整数
  3. 题目要求时间复杂度为O(1)常数级别,那么只能把hash存储在nums数组中体现
  4. nums[i] <= 0的情况元素无效,那么等值替换为n + 1(即最大可能取到的值)
  5. 因为答案存在[1, n + 1],那么我们把i值映射在i-1下标元素上,用负数表示已存在(负数不会影响nums的绝对值)
  6. 遍历元素,做完hash映射时,再遍历一遍数组,如果nums[i] > 0(没被hash标记),那么缺失的最小整数就是i +1
  7. 遍历元素,数组都被标记时(nums[i] <= 0),那么缺失的最小整数就是n + 1

代码

class Solution {public int firstMissingPositive(int[] nums) {int len = nums.length;for (int i = 0; i < len; ++ i) {if (nums[i] <= 0) {nums[i] = len + 1;}}for (int i = 0; i < len; ++ i) {int absNum = Math.abs(nums[i]);if (absNum <= len) {nums[absNum - 1] = -1 * Math.abs(nums[absNum - 1]);}}for (int i = 0; i < len; ++ i) {if (nums[i] > 0) {return i + 1;}}return len + 1;}
}

如果对你有帮助,辛苦点个赞,谢谢啦,朋友!!!

http://www.dtcms.com/a/484080.html

相关文章:

  • 网站开发实战asp制作视频网站开发实用技术相关论文
  • 企业建站一条龙莒县网页设计
  • angular2是做网站的还是手机的网站做百度竞价利于百度优化
  • 江安网站建设织梦网站地图在线生成
  • 上线一个网站需要多少钱深圳网站建设公司的外文名是
  • 云渲染平台支持哪些第三方插件?
  • 本地企业网站建设服务公司企业网站的选择
  • HTML5 新元素
  • 人社部能力建设中心网站wordpress注册后邮箱没有收到信息
  • 基于单片机车窗环境监测控制系统Proteus仿真(含全部资料)
  • 苏州做网站公司哪家比较好中天钢铁 网站建设
  • Grand Challenge 上数据集的下载
  • wordpress替换百度站内搜索平面设计相关的网站有哪些
  • 济南智能网站建设哪家便宜望江县住房和城乡建设局网站
  • 惯性动作捕捉在大型项目中应用的优势
  • 婚纱照网站制作360网站备案
  • 广州新塘网站seo优化企业外贸网络推广
  • 诏安县建设局网站昆明搜索引擎的关键词优化
  • 海外网站代理什么是事件营销
  • 第五周作业(JavaScript)
  • 抽奖网站建设2345传奇世界游戏介绍
  • Redis安装(Linux系统上部署非docker安装)
  • 西安做公司网站做受免费网站
  • 微语言框架:让程序会说多种语言的“翻译官“
  • 婴儿用品网站模板公司注册信息查询系统
  • 高性能网站建设在线阅读南山高端网站建设
  • 怎么把网站黑掉可视化运维管理平台
  • 百度收录网站中文称大型网站系统
  • 计算机视觉入门使用OpenCV进行Python图像处理的全方位指南
  • 如何做外贸网站的推广用c语言做网站