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

922. 按奇偶排序数组 II 双指针 力扣

922. 按奇偶排序数组 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

思路:

左右指针0和n-1,左指针一次前进2格,永远在偶数位,右指针一次后退2格,永远在奇数位。

class Solution(object):def sortArrayByParityII(self, nums):""":type nums: List[int]:rtype: List[int]"""i=0j=len(nums)-1while i<len(nums) and j>=0:if nums[i]%2==1 and nums[j]%2==0:nums[i],nums[j]=nums[j],nums[i]# print(nums)i+=2j-=2if i<len(nums) and nums[i]%2==0:i+=2if nums[j]%2==1 and j>=0:j-=2return nums

http://www.lryc.cn/news/442276.html

相关文章:

  • Vue接入高德地图并实现基本的路线规划功能
  • linux网络编程4
  • Spring模块详解Ⅳ(Spring ORM和Spring Transaction)
  • 深度图可视化显示(kitti)
  • 【Kubernetes知识点】HPA如何控制不同的资源实现自动扩缩容?
  • adb devices不显示连接设备怎么解决
  • 经典sql题(一)求连续登录不少于三天用户
  • 2024java面试-软实力篇
  • 「OC」present和push操作区别以及混合推出的实现
  • 【高分系列卫星简介】
  • 八股文-多线程、并发
  • xtu oj 折纸
  • 传知代码-多示例AI模型实现病理图像分类
  • Java知识点小结3:内存回收
  • LeetCode746:使用花费最小爬楼梯
  • 列表、数组排序总结:Collections.sort()、list.sort()、list.stream().sorted()、Arrays.sort()
  • 【资料分析】刷题日记3
  • 基于SpringBoot+Vue的商场停车场管理系统
  • 4. 密码协议
  • 基于嵌入式的智能物流柜( 触摸屏/0.96寸oled屏)
  • VSCode创建C++项目和编译多文件
  • 7个提升网站分页体验的 CSS 和 JavaScript 代码片段
  • C++——用带有默认参数的函数实现,求两个整数或三个整数中的最大数。
  • 对商品分类系统的若干问题的思考
  • javascript中Number 类型 在实际开发中常用的一些操作方法
  • 部分解决FDTD安装后,matlab指令fopen报错
  • [python3] 处理函数的重试
  • 鸿蒙开发之ArkTS 界面篇 一
  • 嵌入式Linux学习笔记(6)-线程处理、线程同步、线程池(c语言实现)
  • 【HTTP】请求“报头”(Host、Content-Length/Content-Type、User-Agent(简称 UA))