蓝桥杯刷题第三天——排序

题目描述

输入个数进行排序,要求先按奇偶后按从小到大的顺序排序。

输入格式

第一行包含一个整数n。

第二行包含 n 个整数。

输出格式

输出排序之后的结果。

整数之间空格隔开。

数据范围

1≤≤1000,

输入整数取值范围[1,10000]。

解题思路

  1. 首先分离奇数和偶数,使用列表推导式将输入的数字分为奇数和偶数两个列表。

  2. 分别对奇数列表和偶数列表进行排序。

  3. 合并列表,将排序后的奇数列表和偶数列表合并。

  4. 输出结果,将合并后的列表转换为字符串,并用空格分隔每个数字。

代码示例

复制代码
def xax(n, m):
    odd = [num for num in m if num % 2 != 0]
    even = [num for num in m if num % 2 == 0]
    odd.sort()
    even.sort()
    x = odd + even
    return ' '.join(map(str, x))

n = int(input())
m = list(map(int, input().split()))
y = xax(n, m)
print(y)

结果展示

相关推荐
光电笑映16 小时前
STL 源码解密:unordered 系列容器的底层复用与哈希策略
算法·哈希算法·散列表
6Hzlia16 小时前
【Hot 100 刷题计划】 LeetCode 215. 数组中的第K个最大元素 | C++ 快速选择与堆排序题解
c++·算法·leetcode
小白菜又菜16 小时前
Leetcode 3070. Count Submatrices with Top-Left Element and Sum Less Than k
算法·leetcode·职场和发展
爱写代码的小朋友16 小时前
使用 Nuitka 打包 Python 应用:从入门到进阶
开发语言·python
不屈的铝合金16 小时前
Python入门:数字类型与运算
python·数据类型·python类型判断与转换·python运算符优先级
笨笨饿16 小时前
32_复变函数在工程中实际应用区别于联系
linux·服务器·c语言·人工智能·单片机·算法·学习方法
智算菩萨16 小时前
【Python图像处理】3 OpenCV核心操作与图像基本变换
图像处理·python·opencv
会编程的土豆16 小时前
【数据结构与算法】拓扑排序2
数据结构·算法·leetcode
春蕾夏荷_72829772516 小时前
pyside2 打包发布exe文件
python
Boop_wu16 小时前
[Java 算法] 栈
java·开发语言·算法