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

海宏集团网站建设方案台州手机端建站模板

海宏集团网站建设方案,台州手机端建站模板,深圳怎么注册公司,长沙公司做网站大概多少钱题目描述解题思路执行结果 leetcode 922. 按奇偶排序数组 II. 题目描述 按奇偶排序数组 II 给定一个非负整数数组 nums, nums 中一半整数是 奇数 ,一半整数是 偶数 。 对数组进行排序,以便当 nums[i] 为奇数时,i 也是 奇数 &#…

  • 题目描述
  • 解题思路
  • 执行结果
leetcode 922. 按奇偶排序数组 II.


题目描述

  1. 按奇偶排序数组 II

给定一个非负整数数组 nums, nums 中一半整数是 奇数 ,一半整数是 偶数 。

对数组进行排序,以便当 nums[i] 为奇数时,i 也是 奇数 ;当 nums[i] 为偶数时, i 也是 偶数 。

你可以返回 任何满足上述条件的数组作为答案 。

示例 1:

输入:nums = [4,2,5,7] 输出:[4,5,2,7] 解释:[4,7,2,5],[2,5,4,7],[2,7,4,5] 也会被接受。 示例 2:

输入:nums = [2,3] 输出:[2,3]

提示:

2 <= nums.length <= 2 * 104 nums.length 是偶数 nums 中一半是偶数 0 <= nums[i] <= 1000

进阶:可以不使用额外空间解决问题吗?

解题思路

法1

进阶:可以不使用额外空间解决问题

方法1:双指针\

  1. 定义两个指针,一个遍历奇数位一个遍历偶数位

  2. 分别找出两个不满足奇数对应奇数,偶数对应偶数的条件时,交换两个指针的对应数值,

  3. 循环遍历数组,输出结果

这个实现的时间复杂度也是 O(n),其中 n 是数组的长度。这种方法只需要遍历一次数组,并且没有使用额外的空间,满足了题目的要求。

  • 时间复杂度(O(n))
  • 空间复杂度(O(1))

执行结果

法1

我们使用两个指针 evenIndex 和 oddIndex 分别表示奇数索引和偶数索引。我们通过遍历数组并比较当前元素的奇偶性来进行交换操作,直到两个指针超出数组的范围。

如果 nums[evenIndex] 是偶数,则说明它已经在正确的位置上,我们将 evenIndex 增加 2。

如果 nums[oddIndex] 是奇数,则说明它已经在正确的位置上,我们将 oddIndex 增加 2。

如果 nums[evenIndex] 是奇数,且 nums[oddIndex] 是偶数,说明它们不满足奇数对应奇数、偶数对应偶数的条件,我们将它们交换,并将 evenIndex 和 oddIndex 分别增加 2。

最后,返回经过排序的数组 nums。

func sortArrayByParityII(nums []int) []int {
 n := len(nums)
 evenIndex := 0
 oddIndex := 1

 for evenIndex < n && oddIndex < n {
  if nums[evenIndex]%2 == 0 {
   evenIndex += 2
  } else if nums[oddIndex]%2 != 0 {
   oddIndex += 2
  } else {
   nums[evenIndex], nums[oddIndex] = nums[oddIndex], nums[evenIndex]
   evenIndex += 2
   oddIndex += 2
  }
 }

 return nums
}

执行结果:

执行用时: 12 ms , 在所有 Go 提交中击败了 98.74% 的用户 内存消耗: 6.2 MB , 在所有 Go 提交中击败了 91.20% 的用户 通过测试用例: 61 / 61 炫耀一下:



本文由 mdnice 多平台发布

http://www.bjxfkj.com.cn/article/110791.html

相关文章:

  • 做网站 怎么发布网站建设广告图片
  • 网站建设中最基本的决策乌镇网站建设标书
  • 兴仁市建设局网站wordpress 嵌入网页
  • 佛山网站快速排名提升链接在线缩短
  • 中小型网站建设与管理网站建设教程asp
  • 用自己的电脑做网站google store
  • 网站原型图大小做网站必须要公司才能做吗
  • 浙江省住房和城乡建设厅官方网站慧达seo免登录发布
  • 广州网站推广电话php一键建站
  • 网站弹窗怎么做重庆网站开发设计公司
  • 南京建设企业网站建站公司 知乎 discuz
  • 企业网站制作设seo sem是指什么意思
  • 绍兴企业免费建站手机网站建设需求分析
  • 做家教在哪个网站找邦利博客网站怎么做的
  • 现在电商做的设计用的什么网站安徽建设网站公司
  • 西安做行业平台网站的公司会员卡系统
  • 丹东网站制作徐州网站制作功能
  • 万网上传网站甘肃省住房和城乡建设部网站首页
  • 手机网站和电脑网站跳转基于wordpress的网站
  • 传奇免费网站模板下载那个网站做问卷好
  • 网站域名购买com如何做电商运营推广
  • 学校网站建设情况汇报it项目外包网
  • 分类网站怎么做项目云上的网站怎么做等保
  • cdn如何做网站统计一般网站建设需要多少钱
  • 遵义建设厅网站官网厦门网站建设定制多少钱
  • 福州微信网站wordpress调查插件
  • 三网一体网站建设建设一个网站步骤
  • 青岛专业公司网站设计公司公共资源交易中心是干嘛的
  • 服务器发布网站哈尔滨营销网站建设公司哪家好
  • 域名收录查询seo排名优化是什么