📅  最后修改于: 2023-12-03 14:54:59.294000             🧑  作者: Mango
本文将介绍一种用于计算数组中总和为素数的对数的算法。给定一个整数型数组,算法将返回所有满足条件的数字对数。
is_prime()
来判断一个数是否为素数。如果一个数可以被2到它本身之间的任何整数整除,那么它就不是素数。def is_prime(n):
if n <= 1:
return False
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0:
return False
return True
def prime_sum_pairs(arr):
count = 0
n = len(arr)
for i in range(n):
for j in range(i + 1, n):
if is_prime(arr[i] + arr[j]):
count += 1
return count
现在来看一个简单的示例,假设有如下数组:
arr = [1, 2, 3, 4, 5]
使用算法可以得到总和为素数的数字对数为 4,对应的数字对为:
(1, 2), (1, 4), (2, 3), (4, 1)
该算法可以在不需要大量额外空间的情况下快速地计算数组中总和为素数的数字对数。它可以用于解决多种实际问题,如金融分析和数学研究。