(每日一练28749,28795)题目名称:奇偶排序

文盲老顾
WEB应用领新星创作者
博客专家认证
2023-04-18 21:11:14

>给定一个存放整数的数组,重新排列数组使得数组左边为奇数,右边为偶数。(测试用例仅做参考,我们会根据代码质量进行评分

 

这个题目用 python 做,实在无语,两句话的事

n = int(input().strip())
arr = [int(item) for item in input().strip().split()]
result = [v for v in arr if v % 2 == 1] + [v for v in arr if v % 2 == 0]
print(*result)

js 版本也不复杂,es 6 很容易支持这些,并且由于要求输出结果,而不是要求返回一个数组,像 leetcode 那样验证,所以

var n = parseInt(readline().trim());
var arr = Array.from(readline().split(' ')).map(function(v){return parseInt(v)});
print(arr.filter(x => x % 2 == 1).join(' '),arr.filter(x => x % 2 == 0).join(' '))

 

...全文
111 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
文盲老顾 2023-06-25
  • 打赏
  • 举报
回复
n = int(input())
print(*sorted(map(int,input().split()),key = lambda x:((x % 2) ^ 1)))
文盲老顾 2023-04-21
  • 打赏
  • 举报
回复

看到有小伙伴的更简单的实现,抄一下

n = int(input())
arr = list(map(int,input().split()))
print(*sorted(arr,key = lambda x:x % 2,reverse=True))

然后用 js 实现同款排序

var n = parseInt(readline().trim());
var arr = Array.from(readline().split(' ')).map(function(v){return parseInt(v)});
arr.sort((x,y) => x % 2 ? (y % 2 ? 1 : -1) : 1)
print(arr.join(' '))

321

社区成员

发帖
与我相关
我的任务
社区描述
主要用于技术交流,包括但不限于 .net,mssql,js,css,python,算法,运维。也可以晒最新技术,美图,运动等。最后,如果有问题,可以提问,老顾能帮忙的会尽量帮忙哦。
前端sqlserverasp.net 技术论坛(原bbs) 北京·西城区
社区管理员
  • 文盲老顾
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧