博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
找一个数组中特别的数
阅读量:7115 次
发布时间:2019-06-28

本文共 820 字,大约阅读时间需要 2 分钟。

在一个数组中大部分都是奇数(或偶数),只有1个可能是偶数(或奇数),写一个函数special找到这个不一样的值。 special( [2, 4, 0, 100, 4, 11, 2602, 36] ) // 11 唯一的奇数 special( [160, 3, 1719, 19, 11, 13, -21] ) // 160 唯一的偶数

function special(ary){    let one=ary[0]%2;    let two=ary[1]%2;    let three=ary[2]%2;    let flag=0//代表默认是偶数;    if(one==two||one==three){        //走到这个里面的时候,说明找到的跟one相反       // one的值是0||`1`       if(one==0) flag=1       else flag=0       return ary.filter(item=>{         return item%2==flag       })[0]    }else{       //说明one 就是那个特别不同的       return ary[0]           }    }  console.log(special( [160, 3, 1719, 19, 11, 13, -21] ))    复制代码

简化方法:

function sepcile(ary){    let ary1=ary.filter(item=>item%2==0);    let ary2=ary.filter(item=>item%2==1);    return ary1.length>1?ary2[0]:ary1[0];}复制代码

转载于:https://juejin.im/post/5b7cddcef265da435c43f1fc

你可能感兴趣的文章
Struts2工作原理及流程
查看>>
kindeditor编辑器图片水印
查看>>
oracle数据库获取指定表的列的相关信息
查看>>
维克里拍卖 Vickrey auction
查看>>
数学百家
查看>>
nginx实现单服务代理多域名
查看>>
解压缩
查看>>
Docker镜像的获取与删除
查看>>
Vrrp协议
查看>>
项目中js调用service和procedure的办法
查看>>
用友UAP
查看>>
Tomcat error: A child container failed during start
查看>>
jquery 时间戳和日期时间转化
查看>>
Codeforces Round #370 (Div. 2) C. Memory and De-Evolution 水题
查看>>
MySQL数据备份之mysqldump使用
查看>>
mysql中根据一个字段相同记录写递增序号,如序号结果,如何实现?
查看>>
sql STUFF用法
查看>>
fdisk 分区
查看>>
别说无所谓
查看>>
irb的子会话 - 相思雨 - 博客园
查看>>