php数组的奇数_php数组如何将奇数偶数分开

2023-11-12

PHP如何在不使用循环的情况下将奇数和偶数元素与数组分开?

ac26dab83ebec3b9b5a77ce169624858.png

在PHP中,您将获得n个元素的数组。您必须根据元素奇数或偶数将元素与数组分开。也就是说,分别打印奇数数组和偶数数组而不遍历原始数组或使用任何循环。

例子:输入: array(2, 5, 6, 3, 0)

输出: 奇数array: 5 , 3

偶数array: 2, 6, 0

输入: $input = array(0, 1, 2, 3, 4, 5)

输出: 奇数array: 1, 3, 5

偶数array: 0, 2, 4

通过遍历数组并打印奇数甚至单独的元素可以很容易地解决这些类型的问题,但这会占用更多的代码行,并且代码中也会出现循环开销。因此,为了避免使用循环,我们将尝试使用PHP的一些内置函数。这里我们使用两个PHP数组函数array_filter()和array_values()来解决这个问题。

array_filter():此函数将用于过滤输入数组中的奇数/偶数元素。

array_values():此函数将用于重新索引奇数和偶数数组,因为array_filter奇数和偶数数组具有与其元素在输入数组中具有的索引相同的索引。

注意: array_filter()函数只会过滤奇数/偶数索引元素及其索引值。应用array_filter()函数后,奇数数组的索引将为1,3,5,偶数数组的索引将为0,2,4。

算法:

过滤元素:

通过array_filter()过滤奇数元素。

通过array_filter()过滤偶数元素。

重新索引数组:

使用array_values()重新索引奇数数组。

使用array_values()重新索引偶数数组。

打印奇数/偶数数组。

以下是上述算法的PHP实现:<?php

$input = array(4, 3, 6, 5, 8, 7, 2);

function oddCmp($input)

{

return ($input & 1);

}

function evenCmp($input)

{

return !($input & 1);

}

$odd = array_filter($input, "oddCmp");

$even = array_filter($input, "evenCmp");

$odd = array_values(array_filter($odd));

$even = array_values(array_filter($even));

print"奇数数组:\n";

print_r($odd);

print"偶数数组:\n";

print_r($even);

?>

输出如下图:

7f21635271772527ed8a0b9e9879990e.png

本篇就是关于php数组如何将奇数偶数分开(不使用循环的方法)的具体方法介绍,希望对需要的朋友有所帮助!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

php数组的奇数_php数组如何将奇数偶数分开 的相关文章

  • linux内核有哪些协议族,Linux内核中PF_KEY协议族的实现.doc

    Linux内核中PF KEY协议族的实现 Linux内核中PF KEY协议族的实现 1 本文档的Copyleft归yfydz所有 使用GPL发布 可以自由拷贝 转载 转载时请保持文档的完整性 严禁用于任何商业用途 msn yfydz no1
  • libvlc —— 攫取 RGB图像 和 PCM音频 数据[C++代码实现]

    在我以前的实际项目中 曾利用 libvlc 去解码音视频媒体数据 如 RTSP 本地文件 等 通过其提供的回调函数接口 攫取 RGB图像 进行图像分析 如 人脸识别 运动检测 等一类的产品应用 除此之外 只要提供适当的 MRL 配合选项参数
  • sm2算法前端处理_超级账本 Fabric 国密算法支持

    区块链高级技术专家群内部讲座系列活动 群内由区块链相关团队或组织的技术专家 学者和负责人等组成 目前仅限邀请加入 分享内容会在 TechFirst 微信公众号进行首发 欢迎关注 嘉宾介绍 刘地军 现就职于中国网安密码国家重点实验室 负责和参
  • poj 1195 Mobile phones

    Problem poj org problem id 1195 vjudge net contest 146952 problem C Meaning 有一个 S S 的正方形区域 两维的下标范围都是是 0 S 1 有 4 种操作 1 0
  • git图形化工具GitKraken的使用——Stash和Pop

    正如两个单词的字面意思一样 stash 贮藏 pop 将准备好的东西突然拿出来 这一节模拟git中的这两个命令 git stash 和 git stash pop 在实际开发中 解决bug是避免不了的 在git中 每个bug都是通过新建一个
  • 2022年9月电子学会C语言等级考试试卷(二级)答案解析

    青少年软件编程 C语言 等级考试试卷 二级 分数 100 题数 5 1 统计误差范围内的数 统计一个整数序列中与指定数字m误差范围小于等于X的数的个数 时间限制 5000 内存限制 65536 输入 输入包含三行 第一行为N 表示整数序列的
  • 分治法和蛮力法MATLAB求最近点对

    主程序 main m clear clc n 20 随机生成20个点 A rand n 2 10 将20个点按横坐标升序排列 A sortrows A 1 蛮力法求随机点的最近点对 mindist x1 x2 Bcloest A 1 n m
  • constraintlayout嵌套_Android开发知识(二十六)强大的约束布局 - ConstraintLayout的用法总结...

    th 0dp android layout height 0dp app layout constraintHeight percent 0 5 app layout constraintHei oid layout height 0dp
  • 中继的框架与介绍

    一 概述 继 Relay 是一种网络设备或服务 用于转发网络数据包或消息 它在计算机网络中起到桥接 转发或中转的作用 将信息从一个地方传递到另一个地方 中继可以用于不同类型的网络 包括局域网 LAN 广域网 WAN 互联网等 它可以在不同网
  • Pycharm配置本地解释器

    由于Pycharm自带解释器 所以默认情况下我们是无法使用本地安装好的第三方库的 这个时候我们需要在Pycharm中配置本地的解释器 1 setting 2 add 3 找到本地的python解释器的路径
  • 超级详细找CALL写CALL教程[转]

    首先我们要知道一点 为什么要找CALL CALL是什么 大家知道易里的子程序吧如何调用子程序的 这里的CALL就是调用子程序的意思 那问了为什么要找他的 答案是 当你些个游戏的外挂用模拟键盘操作的时候 被操作的永远是当前窗口 当窗口切换的时
  • 多元时间序列因果关系分析研究综述

    Granger因果分析基本方法 目录 Granger因果分析基本方法 条件 Granger 因果模型 多元混沌时间序列因果分析 高维时间序列的因果分析 Lasso Granger因果模型 非线性Granger因果模型 Granger因果关系
  • DHCP 理论

    DHCP的基本工作过程 有4个阶段 discover offer request ack nak 抓包 标准地址池 1 地址段 网络号 掩码 2 网关 用于不同网段通信 3 dns DHCP的offer包部分字段 option 1 掩码 o
  • 讯飞星火认知大模型可以内测了

    以ChatGPT为代表的AI产品层出不穷 每天在社交媒体都可以看到AI领域的新成果 写文章 写代码 绘画 各种功能让人大呼神奇 4月24日 讯飞星火认知大模型来了 只需一个指令 懂你所言 答你所问 创你所需 解你所难 学你所教 一旦掌握正确
  • scp传输文件的命令

    scp传输文件的命令 scp传输文件的命令 一 scp常规的使用方式 scp可以进行简单的远程复制文件的功能 它是一个在各个主机之间进行复制或文件传输的一个命令工具 它使用一种同ssh一样的安全机制来进行文件的传输 注意 下面定义的远程计算
  • 云计算day08-Kubernetes_K8s

    文章目录 1 k8s的架构 2 k8s集群的安装 2 1 环境准备 2 2 k8s master上配置 2 3 master节点安装kubernetes 2 4 node节点安装kubernetes 2 5 所有节点配置flannel网络
  • 简单阐述下决策树、回归、SVM、神经网络等算法各自的优缺点?

    正则化算法 Regularization Algorithms 集成算法 Ensemble Algorithms 决策树算法 Decision Tree Algorithm 回归 Regression 人工神经网络 Artificial N
  • 检测浏览器是否开启firebug以及如何避免调试信息带来的脚本错误

    今天发现使用Gmail的时候开启firebug 会给出提示 在已知情况下 除非正确配置 Firebug 否则它会使 Gmail 运行缓慢 解决此问题 隐藏 感叹Gmail真是事无巨细 面面都考虑到了 于是想了解Gmail是如何检测用户是否开
  • vue解决Not allowed to load local resource

    前言 在进行通过本地路径进行加载图片的时候 突然就报了这个问题 Not allowed to load local resource 这个是由于安全性的问题 导致浏览器禁止直接访问本地文件 那么 这边我说一下我具体是怎么解决的吧 问题描述

随机推荐

  • linux alien命令将deb安装包和rpm安装包进行相互转换

    alien命令作用 alien是一个用于在各种不同的Linux包格式相互转换的工具 其最常见的用法是将 rpm转换成 deb 或者反过来 alien命令安装 Debian系linux可使用下面命令安装alien sudo apt get i
  • 分享一下我做软件测试这些年的心路历程,以及软件测试的发展方向。

    为什么入软件这行 很多人问我 一个女孩子做这个不太好 做不长久 特别年龄大了更不好做 我只是很随意的说专业对口 我能说是看上这个行业的高工资和技术范么 这样太俗了 然而就是这个俗气的理由让我走上这一条路 且想一直走下去 为什么呢 一是因为做
  • Circuit Board

    http acm zju edu cn onlinejudge showProblem do problemCode 164 On the circuit board there are lots of circuit paths We k
  • NDK使用遇到的那些事(持续更新当中)

    AppCamera transformNativeLibsWithStripDebugSymbolForDebug FAILURE Build failed with an exception What went wrong Executi
  • 性能、自动化面试题

    1 性能测试流程是怎么样的 2 如果测试过程中发现响应时间比较长 怎么分析 1 排查负载机 是不是负载机资源不足引起的 看看脚本是不是有问题 2 查看所消耗的时间主要是在网络传输上还是服务器上 网络传输 结合网络吞吐量图计算宽带是不是有瓶颈
  • 非spring注入使用RedisTemplate,需先调用afterPropertiesSet()方法

    错误信息 Exception in thread main java lang IllegalArgumentException template not initialized call afterPropertiesSet before
  • Piggy-Bank【暑期集训F题】【完全背包】

    Before ACM can do anything a budget must be prepared and the necessary financial support obtained The main income for th
  • 一文教你理解傅里叶变换及MATLAB在求傅里叶变换中的应用

    大纲 从积分变换谈起 积分变换的基本概念 积分变换的来源 傅里叶级数 傅里叶级数的相关基础概念 傅里叶级数的基石 三角函数系及其正交性 三角函数系 三角函数系的正交性 傅里叶级数的含义 傅里叶系数的导出 傅里叶级数收敛条件与收敛定理 从周期
  • PCIe架构下memory空间、IO空间、PCIe配置空间简介

    转载自 PCIe架构下memory空间 IO空间 PCIe配置空间简介 1 4种空间迷魂阵 PCIe架构下定义了4种地址空间 Memory空间 IO空间 配置空间和message空间 我们先看一下PCIe spec关于这四种空间的定义 1
  • printf,sprintf,sprintf_s,_snprintf_s,vsprintf,vsnprintf,_vsnprintf_s,_vscprintf等格式化字符串使用与区别

    最近在为新做的项目找个好用的第三方日志库 感觉log4cpp挺好用的 日志输出使用了格式化字符串 不同的函数功能不同 而且变异版本比较多 自己都有点搞昏了 网上搜索也比较笼统 下面是自己coding测试格式化字符串的过程 vs2015 wi
  • ubuntu做文件服务器,简单主文件服务器(基于Ubuntu)

    简单的家庭文件服务器 基于Ubuntu 版本1 0 作者 Xam 本教程将介绍如何将具有附加硬盘的旧PC转换为简单的家庭文件服务器 文件服务器用于家庭使用 家庭文件服务器可以通过家庭网络中的Windows和Linux计算机访问 现有教程没有
  • ioctl函数详细说明

    ioctl 函数 本函数影响由fd 参数引用的一个打开的文件 include
  • ESP32篇-ESP32-cam初体验

    忙活了一上午 终于用ESP32 camov2640摄像头模块在单片机上照上像了 硬件准备 ESP32 cam 我买的自带底板可以烧录程序 软件准备 Arduino IDE就够了 环境配置 打开安装好的Arduino IDE 在 文件 gt
  • 谷歌瓦片像素点与经纬度的对应关系

    当分析谷歌瓦片的时候会发现 在高纬度区域单位像素表示的经度跨度大 低纬度的跨度小 这时因为谷歌地图采用了非线性拉伸方法 具体原因还未深究 或许是因为低纬度需要表现更好的细节吧 先上一些代码 经度到像素X值 double lngToPixel
  • angular引用bootstrap_Angular 中引入BootStrap

    由于Bootstrap官方目前并没有发布Angular的相关类库进行支持 当前Angular只能引用使用Bootstrap相关的样式 无法使用Bootstrap自带的脚本逻辑 以下以Angular7和Bootsrap4 2为例进行demo验
  • Vue项目环境搭建

    最近想试着自己搭建个简单的接口自动化测试平台 就是前端上传自动化case 后端执行自动化脚本 搭建平台的第一步就是先准备开发环境 后端环境 语言 java 开发工具 IntelliJ IDEA 环境 jdk8 数据库 MySQL 前端 框架
  • TeX,LaTeX和KaTeX简介

    1 TeX TeX 是由著名的计算机科学家 Donald E Knuth 设计和实现的计算机排版系统 TeX 以其高质量的排版输出 特别是数学公式的排版能力而闻名 被广泛用于学术界的科技排版 如果说时间就是生命 那就可以认为 TEX每天都在
  • C语言自增(++)自减(--)运算符原理解析

    关键 自增减 前置 在运算之前改变变量 自增减 后置 在运算之后改变变量 要真正的理解这两句话的内涵 自增减前置在运算之前改变变量 运算时是不变的 即使运算过程中遇到自增减后置时变量也是不变的 因为自增减后置是在运算完成后改变变量 int
  • MySQL 连接(join)介绍

    首先介绍join的用法 以如下两个表为例 博客表 t blog id title typeId 1 aaa 1 2 bbb 2 3 ccc 3 4 ddd 4 5 eee 4 6 fff 3 7 ggg 2
  • php数组的奇数_php数组如何将奇数偶数分开

    PHP如何在不使用循环的情况下将奇数和偶数元素与数组分开 在PHP中 您将获得n个元素的数组 您必须根据元素奇数或偶数将元素与数组分开 也就是说 分别打印奇数数组和偶数数组而不遍历原始数组或使用任何循环 例子 输入 array 2 5 6