📅  最后修改于: 2023-12-03 14:49:32.142000             🧑  作者: Mango
排序是程序设计中非常重要的一个环节。本文将以降序对数组中的质数进行排序作为主题,介绍如何使用 Python 对数组进行排序。
排序算法有很多种,如冒泡排序、快速排序、归并排序等。本文使用冒泡排序来对数组进行排序。
在对数组进行排序前,需要先将数组中的质数筛选出来。为此,可以使用一个函数 is_prime()
来判断一个数是否为质数。具体实现如下:
def is_prime(num):
if num < 2:
return False
for i in range(2, int(num ** 0.5) + 1):
if num % i == 0:
return False
return True
该函数返回值为布尔类型,如果输入的数为质数,则返回 True,否则返回 False。
接下来,我们可以使用该函数来筛选数组中的质数,并将它们保存到一个新的数组 primes
中:
arr = [3, 7, 8, 5, 2, 4, 9, 11, 13, 17]
primes = [num for num in arr if is_prime(num)]
这里使用了列表推导式,将数组 arr
中的质数筛选出来并保存到 primes
中。
最后,对数组 primes
进行降序排序。在 Python 中,可以使用 sort()
函数对列表进行排序。由于要进行降序排序,需要指定 reverse=True
:
primes.sort(reverse=True)
最终,我们得到了一个按降序排列的质数数组。
下面是完整的代码:
def is_prime(num):
if num < 2:
return False
for i in range(2, int(num ** 0.5) + 1):
if num % i == 0:
return False
return True
arr = [3, 7, 8, 5, 2, 4, 9, 11, 13, 17]
primes = [num for num in arr if is_prime(num)]
primes.sort(reverse=True)
print(primes)
输出结果为:
[17, 13, 11, 7, 5, 3, 2]
本文介绍了如何使用 Python 对数组中的质数进行降序排序。具体实现过程涉及到对质数的筛选以及冒泡排序的实现。在实际编程中,应根据实际情况选择适合的排序算法。