LeetCode905. 按奇偶排序数组(java)

企业级AI Agent平台建设方案 本报告将深入剖析构成一个顶级AI Agent平台的各个功能层面,为构建者提供一份全面的战略蓝图。 阅读详情

题目:

给定一个非负整数数组 A,返回一个由 A 的所有偶数元素组成的数组,后面跟 A 的所有奇数元素。

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

示例:
在这里插入图片描述
代码:

  • 解法一
//使用夹逼思想
class Solution {
    public int[] sortArrayByParity(int[] A) {
        if(A==null||A.length==0){
            return null;
        }
        int start=0;
		int end=A.length-1;
		while(start<end){
			if(A[start]%2==0&&A[end]%2==0){
				start++;
			}else if(A[start]%2==0&&A[end]%2==1){
				start++;
				end--;
			}else if(A[start]%2==1&&A[end]%2==0){
				int temp=A[start];
				A[start]=A[end];
				A[end]=temp;
			}else{
				end--;
			}
		}
		return A;
    }
}
  • 解法二
//使用插入排序
class Solution {
    public int[] sortArrayByParity(int[] A) {
        if(A==null||A.length==0){
            return null;
        }
        for(int i=1;i<A.length;i++){
            if(A[i]%2==0){
                int temp=A[i];
                int j=i;
                for(;j>0&&A[i-1]%2==1;j--){
                    A[j]=A[j-1];
                }
                A[j]=temp;
            }
        }
        return A;
    }
}
  • 别人的代码
class Solution {
    public int[] sortArrayByParity(int[] A) {
        if(A==null||A.length==1){
            return A;
        }
        //归并排序
        int left=0;//向右走
        int right=A.length-1;//向左走
        while(left<right){
            while(left<right&&A[left]%2==0){//找到奇数坐标就跳出循环
                ++left;
            }
            while(left<right&&A[right]%2==1){//找到偶数坐标就跳出循环
                --right;
            }
            //交换后
            swap(A,left,right);
        }
        return A;
    }
    public void swap(int[] A, int i, int j) {
        int temp = A[i];
        A[i] = A[j];
        A[j] = temp;
    }
}
微波技术仿真:微波谐振器分析_(2).微波谐振器理论 谐振器是一种能够在特定频率范围内存储和释放电磁能量的器件。在微波频段,谐振器通常用于滤波、频率选择和能量存储等应用。一个理想的谐振器在谐振频率下能够存储无限大的能量,但在实际应用中,由于损耗的存在,谐振器的性能会受到一定限制。微波谐振器在微波通信、雷达系统、微波测量和微波电路设计等领域中发挥着重要作用。谐振器的设计需要考虑多个因素,包括谐振频率的精确控制、损耗的最小化、频率稳定性的提高和小型化设计。通过理论分析和仿真工具的使用,可以有效优化谐振器的性能,满足实际应用的需求。 阅读详情

相关推荐

YF-S401水流量传感器在STM32上的精准计量实现

本文详细介绍了YF-S401水流量传感器与STM32微控制器的集成应用,实现精准水流计量。通过外部中断和外部时钟两种脉冲计数方案,结合硬件配置、软件滤波和校准技巧,确保高精度流量测量。适用于智能家居和工业自动化中的水控系统,提升系统稳定性和测量准确性。

rainy的博客 897

LeetCode905.按奇偶排序数组(java实现)

题目: 代码: class Solution { public int[] sortArrayByParity(int[] A) { int left=0; int right=A.length-1; while(left<right){ if(A[left]%2==1&&A[right...

qq_45824565的博客 178

vivado安装空间与依赖要求:入门须知要点

准备安装Vivado时,需重点关注系统空间和依赖环境的配置。结合vivado安装教程,详细说明最低磁盘要求、内存配置及操作系统兼容性,帮助新手快速搭建开发环境,避免常见安装失败问题。

weixin_34725745的博客 1580

按奇偶排序数组(定一个非负整数数组 A,返回一个由 A 的所有偶数元素组成的数组,后面跟 A 的所有奇数元素。)

给定一个非负整数数组 A,返回一个由 A 的所有偶数元素组成的数组,后面跟 A 的所有奇数元素。 你可以返回满足此条件的任何数组作为答案。 示例: 输入:[3,1,2,4] 输出:[2,4,3,1] 输出 [4,2,3,1],[2,4,1,3] 和 [4,2,1,3] 也会被接受。 public class test0326 { public static void main(Str...

be_gin_ner的博客 702

银河麒麟桌面操作系统V10(SP1)ssh服务安装与配置

在国产化的大背景下,各种国产操作系统逐步进入运维人员的视野,ssh作为linux远程连接工具,是运维人员必需的工具之一。本文主要介绍在银河麒麟桌面操作系统V10(SP1)上安装和配置ssh服务。

zhengshaolin128的博客 7813

Kimi K3大模型API实战:从调用到本地知识库问答系统构建

大语言模型(LLM)作为人工智能的核心技术,通过海量数据训练获得理解和生成自然语言的能力。其工作原理基于Transformer架构,通过自注意力机制捕捉长距离依赖关系。这项技术的核心价值在于能够将非结构化文本转化为可计算、可交互的智能体,极大地提升了信息处理和自动化任务的效率。在应用场景上,大模型广泛应用于智能对话、代码生成、文档总结与问答等领域。其中,国产大模型如月之暗面推出的Kimi K3,凭借其在**长文本处理**和**中文场景优化**方面的优势,为开发者提供了新的技术选项。本文将以Kimi K3为例

weixin_30694389的博客 299

Leetcode刷题 (Python)905 按奇偶排序数组

题目描述: 给定一个非负整数数组 A,返回一个由 A 的所有偶数元素组成的数组,后面跟 A 的所有奇数元素。 你可以返回满足此条件的任何数组作为答案。 示例: 输入:[3,1,2,4] 输出:[2,4,3,1] 输出 [4,2,3,1],[2,4,1,3] 和 [4,2,1,3] 也会被接受。 提示: 1 <= A.length <= 5000 0 <= A[i] &l...

Howar Yick的博客 341

RK3568/RK3588之修改8250驱动实现RS485收发的自动切换

在串口发送前,若为485,则将控制引脚拉为发送状态,在发送后,循环查看是否发送完成,若发送完成则将引脚置回读状态,如此一来,就能实现在内核测控制方向切换,而不会因为延时造成数据丢失,经过测试此办法可行。全部修改完成后,重新编译生成内核文件和设备树文件,烧写到板子上即可。

哒宰的博客 3121

Leecode刷题java之按奇偶排序数组

题目: 给定一个非负整数数组 A,返回一个数组,在该数组中,A 的所有偶数元素之后跟着所有奇数元素。 你可以返回满足此条件的任何数组作为答案。 示例: 输入:[3,1,2,4] 输出:[2,4,3,1] 输出 [4,2,3,1],[2,4,1,3] 和 [4,2,1,3] 也会被接受。 提示: 1 <= A.length <= 5000 0 <= A[i] <...

逆水行舟,不进则退 508

基于STM32的多传感器融合的设施农业小型搬运机器人避障控制系统设计

针对设施农业场景中狭窄通道、障碍物多样(如农机具、作物植株、水管)的特点,设计一款基于 STM32 的小型搬运机器人避障控制系统。系统通过多传感器融合实现 360° 环境感知,采用模糊 PID 控制算法实现平滑避障,满足温室、大棚等场景的搬运需求。通过在温室环境测试,系统可实现对直径≥5cm 障碍物的有效检测(检测距离误差≤5%),避障转向半径≤30cm,平均功耗≤15W。后续可通过增加激光雷达(如 TFmini)提升远距离障碍物检测能力,结合 SLAM 算法实现路径规划。

weixin_42300449的博客 860

Python 爬虫实战:爬取万方数据文献信息

本文介绍了基于Python爬虫技术合规获取万方数据文献信息的方法。通过分析万方数据的请求机制与反爬策略,采用requests库结合Session维持合法会话,实现了文献标题、摘要、作者等核心元数据的提取。文章详细讲解了Token验证、动态请求构造、JSON数据解析等关键技术,并提供了完整可运行代码。同时强调严格遵守《万方数据知识服务平台用户协议》,控制请求频率,仅限学术研究使用。该方案为万方数据文献信息获取提供了标准化解决方案,支持数据清洗、结构化存储及后续分析应用。

2503_91057718的博客 2138

按奇偶排序数组

给定一个非负整数数组 A,返回一个由 A 的所有偶数元素组成的数组,后面跟 A 的所有奇数元素。 你可以返回满足此条件的任何数组作为答案。 示例: 输入:[3,1,2,4] 输出:[2,4,3,1] 输出 [4,2,3,1],[2,4,1,3] 和 [4,2,1,3] 也会被接受。 提示: 1 &lt;= A.length &lt;= 5000 0 &lt;= A[i] &lt;= 5000 ...

Wang.T的博客 1222

/home 挂载点无法访问 怎么解决 指令可以进入Home目录 du: 无法访问“*“: 输入/输出错误

本文介绍了Linux系统中XFS文件系统损坏的故障排查与修复方法。当/home挂载点出现I/O错误时,通过dmesg发现XFS日志错误和磁盘I/O报错,判断可能是文件系统逻辑损坏或硬件故障。解决方案包括:1)尝试卸载分区;2)使用xfs_repair工具进行预检查和正式修复;3)在极端情况下使用-L参数强制清空日志;4)若存在硬件故障,建议优先进行数据抢救并更换硬盘。最后强调重要数据应先备份,再考虑系统重建。

专注于计算机研发知识和资讯分享 157

力扣:905. 按奇偶排序数组 题解(Java)

题目地址:按奇偶排序数组 题目描述: 例: 解题思路: 代码:

HOOHV的博客 355

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

数据结构与算法|数组之元素奇偶移动专题|力扣leetcode905按奇偶排序数组(cpp、Java实现)

这类题目多使用双指针法,首先将左右指针分别指向数组的两端,然后依据题目要求进行元素交换。或者可以另辟蹊径,另外开辟一个数组空间,不过这种方法牺牲了空间。1.移动偶数到数组前面,奇数到数组后面在这种情况下,可以以0为基准,左指针从头到尾扫描原始数组,当遇到一个偶数时,将其与基准(第一个元素)交换。在扫描结束后,所有的偶数都被移动到了基准的左侧。接下来,再以最后一个元素为基准,右指针从尾到头扫描原始数组,当遇到一个奇数时,将其与基准(最后一个元素)交换。在扫描结束后,所有的奇数都被移动到了基准的右侧。

染落林间色的博客 648

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

LeetCode 905. 按奇偶排序数组 - Java

该题原址:https://leetcode-cn.com/problems/sort-array-by-parity/ 问题描述 问题分析 巧妙的方法需要对数组有深入的理解. 正确的思路是利用左右指针来判断数组两头的值是否为奇数或偶数,在进行相应操作后,移动左右指针,当左右指针相碰则遍历完成. 算法复杂度(O(N/2)) 错误思路 : 将奇偶分别存放在一个数组中后,之后再按照先添加偶数数...

Clearlight's Blog 709

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Java算法——按奇偶排序数组(LeetCode第905题)

问题描述: 给你一个整数数组 nums,将 nums 中的的所有偶数元素移动到数组的前面,后跟所有奇数元素。 返回满足此条件的 任一数组 作为答案。 示例: 分析: 使用一个长度与nums相等的新数组存储排好序的整数。遍历nums,遇到偶数便将其存放进新数组的前面(从0下标开始),遇到奇数便将其存储至新数组后面(从下标nums.length - 1 开始)。 判断是偶数还是奇数的方法这里不用除二取余,可以使用位运算。因为偶数的二进制最后一位数字一定是0,而奇数的二进制最后一位数字一定是1。

Kk_Chosen1的博客 2171

【LeetCode】905. 按奇偶排序数组(Java)

给定一个非负整数数组 A,返回一个数组,在该数组中, A 的所有偶数元素之后跟着所有奇数元素。 你可以返回满足此条件的任何数组作为答案。 class Solution { public int[] sortArrayByParity(int[] A) { //双指针 int left = 0, right = A.length - 1; while (left < right) { //左指针找奇数

小楊同学的笔记本 228

LeetCode905.按奇偶排序数组(Java实现)

链接:https://leetcode-cn.com/problems/sort-array-by-parity/ class Solution { public int[] sortArrayByParity(int[] A) { if(A==null){ return null; } for(int i=1;i<A.length;i++){ ...

Teacher_HENG 204

LeetCode 905. 按奇偶排序数组 Java

题目: 给定一个非负整数数组 A,返回一个数组,在该数组中, A 的所有偶数元素之后跟着所有奇数元素。 你可以返回满足此条件的任何数组作为答案。 示例: 输入:[3,1,2,4] 输出:[2,4,3,1] 输出 [4,2,3,1],[2,4,1,3] 和 [4,2,1,3] 也会被接受。 提示: 1 <= A.length <= 5000 0 <= A[i] <= 5000 思路+代码 双指针 左指针在开始位置 右指针从头遍历,遇见偶数直接换(是本身也换),之后左指针向右移一

Cold__Winter的博客 200

Java每日一题:LeetCode-905按奇偶排序数组

这是我做过的一个题,我把它分享给你们: 这是原文链接:https://leetcode-cn.com/problems/sort-array-by-parity/ 如果感觉我做的还行的话,记得点赞。 思路分析: 这道题是就是让我们调整给定的A数组里面的元素,把偶数放在前面,奇数放在后面,其实很简单。 1.定义两个变量l和r,l从数组第一个元素开始往后走,r从数组最后一个元素开始往...

xweiwxh的博客 216

leetcode刷题记录-905.按奇偶排序数组[java,数组]

题目 给定一个非负整数数组 A,返回一个数组,在该数组中, A 的所有偶数元素之后跟着所有奇数元素。 你可以返回满足此条件的任何数组作为答案。 示例: 输入:[3,1,2,4] 输出:[2,4,3,1] 输出 [4,2,3,1],[2,4,1,3] 和 [4,2,1,3] 也会被接受。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/sort...

AG9GgG的博客 310

Java奇偶排序数组leetcode-905

给你一个整数数组nums,将nums中的的所有偶数元素移动到数组的前面,后跟所有奇数元素。 返回满足此条件的任一数组作为答案。 class Solution { public int[] sortArrayByParity(int[] nums) { int n = nums.length; if(n == 1 )return nums; int[] f = new int[n]; int cur = 0; ...

qq_42900213的博客 367

leetcode905. 按奇偶排序数组(java)

简单题重拳出击 双指针yyds class Solution { public int[] sortArrayByParity(int[] nums) { int n = nums.length; int i = 0, j = n - 1; while(i <= j){ if(nums[i] % 2 == 0 && nums[j] % 2 != 0){ i ++;

qq_45908682的博客 266

905.按奇偶排序数组----LeetCode(Java实现)

解题思路: (1)创建一个与原数组同样大小的数组 (2)准备一个计数器cnt,作为偶数的下标(从0开始计数);同时准备另一个计数器j,作为奇数的下标(从数组最大索引开始) (3)遍历原数组,如果是偶数,存到cnt指向的位置,同时cnt++;如果是奇数,存到j指向的位置,同时j-- class Solution { public int[] sortArrayByParity(in...

如沐清风的博客 213

leetcode905-按奇偶排序数组(java)

题目链接 题目描述: 给定一个非负整数数组 A,返回一个由 A 的所有偶数元素组成的数组,后面跟 A 的所有奇数元素。 你可以返回满足此条件的任何数组作为答案。 示例: 输入:[3,1,2,4] 输出:[2,4,3,1] 输出 [4,2,3,1],[2,4,1,3] 和 [4,2,1,3] 也会被接受。 提示: 1 &lt;= A.length &lt;= 5000 0 &lt;= A[i] &l...

DBgirl的博客 253
上一篇: LeetCode240. 搜索二维矩阵 II(java)
下一篇: LeetCode485. 最大连续1的个数(java)
inferno devil
博客等级 码龄9年 54粉丝 172原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值