news 2026/6/15 17:50:27

面试常考:如何原地重排数组?这个思路绝了

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
面试常考:如何原地重排数组?这个思路绝了

解题思路

这道题我们用两个指针分别追踪奇数位和偶数位,每次检查最后一个元素是奇数还是偶数,然后把它交换到对应的位置上。

比如最后一个元素是奇数,就把它换到下一个需要填充的奇数位(1, 3, 5…),换过来的元素又成为新的"最后一个元素",继续这个过程。

这样做的优势是不需要额外空间,而且每次交换都在推进进度,最终当奇数位和偶数位都填满后,数组自然就符合要求了。

举个栗子

输入:[4, 2, 5, 7]

执行过程:

  1. 初始:[4, 2, 5, 7],最后元素 7(奇数) → 交换到 odd=1 →[4, 7, 5, 2]
  2. 最后元素 2(偶数) → 交换到 even=0 →[2, 7, 5, 4]
  3. 最后元素 4(偶数) → 交换到 even=2 →[2, 7, 4, 5]
  4. 最后元素 5(奇数) → 交换到 odd=3 →[2, 7, 4, 5]

输出:[2, 7, 4, 5]

代码实现

publicstaticint[]sortArrayByParityII(int[]nums){intn=nums.length;for(intodd=1,even=0;odd<n&&even<n;){if((nums[n-1]&1)==1){// 最后一个元素是奇数,放到奇数位swap(nums,odd,n-1);odd+=2;}else{// 最后一个元素是偶数,放到偶数位swap(nums,even,n-1);even+=2;}}returnnums;}publicstaticvoidswap(int[]nums,inti,intj){inttmp=nums[i];nums[i]=nums[j];nums[j]=tmp;}

如果觉得有帮助,欢迎点赞、关注、转发~

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/15 14:20:49

FanFicFare终极指南:一键下载100+网站小说,轻松制作电子书

FanFicFare终极指南&#xff1a;一键下载100网站小说&#xff0c;轻松制作电子书 【免费下载链接】FanFicFare FanFicFare is a tool for making eBooks from stories on fanfiction and other web sites. 项目地址: https://gitcode.com/gh_mirrors/fa/FanFicFare FanF…

作者头像 李华
网站建设 2026/6/15 15:06:19

图论算法实战:为什么并查集与最小生成树是程序员必备技能

图论算法实战&#xff1a;为什么并查集与最小生成树是程序员必备技能 【免费下载链接】baekjoon 코딩테스트 대비 문제집(Baekjoon Online Judge) 项目地址: https://gitcode.com/gh_mirrors/ba/baekjoon 在当今的软件开发领域&#xff0c;图论算法已经成为衡量程序员技…

作者头像 李华
网站建设 2026/6/15 3:25:32

AI工具实战测评:从功能到成本全解析

引言简要介绍AI工具的普及背景及其在各行业的应用价值&#xff0c;说明实战测评的目的和意义。测评框架设计明确测评的核心维度&#xff1a;功能性、易用性、性能效率、兼容性、成本效益等&#xff0c;列举具体指标&#xff08;如响应速度、准确率、API稳定性&#xff09;。工具…

作者头像 李华
网站建设 2026/6/15 12:47:01

2026年度河北省职业院校技能竞赛“Web技术”(高职组)赛项竞赛任务

2026年度河北省职业院校技能竞赛“Web技术”&#xff08;高职组&#xff09;赛项竞赛任务 文章目录2026年度河北省职业院校技能竞赛“Web技术”&#xff08;高职组&#xff09;赛项竞赛任务模块一 系统设计任务一 PC端旅游网中城市分类功能设计说明书文档的编写模块二 程序排错…

作者头像 李华
网站建设 2026/6/15 10:39:19

文件快速复制工具v5.11.20 中文解锁版!200MB/s速度快到起飞 !解决了 Windows 的痛点!突破系统限制!高效复制工具

快速复制文件&#xff0c;特别是对于大量小文件或者碎片文件的复制&#xff0c;其表现可能会比操作系统自带的复制功能更为出色。 软件获取地址 FastCopy复制粘贴快速工具 ............................................................................................ C…

作者头像 李华