📅  最后修改于: 2023-12-03 14:57:34.381000             🧑  作者: Mango
在计算中,完美平方是指一个整数可以表示为另一个整数的平方的形式。例如,4和9是完美平方,因为它们可以分别表示为2的平方和3的平方。在这篇文章中,我们将研究如何查找给定数组中存在的完美平方。
要找到给定数组中的完美平方,我们可以遍历数组中的每个元素,并通过计算其平方根来检查该元素是否是完美平方。
以下是该算法的一个Python实现:
import math
def find_perfect_squares(arr):
result = []
for num in arr:
if math.sqrt(num).is_integer():
result.append(num)
return result
我们使用math.sqrt
函数来计算每个元素的平方根,并使用is_integer
方法检查该结果是否为整数。如果是,则将该元素添加到结果数组中。最后,我们返回结果数组。
以下是一个简单的测试用例,以检查我们的算法是否正确:
assert find_perfect_squares([2, 3, 4, 5, 6, 7, 8, 9, 10]) == [4, 9]
assert find_perfect_squares([1, 4, 9, 16, 25, 36]) == [1, 4, 9, 16, 25, 36]
assert find_perfect_squares([11, 12, 13, 14, 15]) == []
测试用例分别检查具有不同输入的算法的输出是否正确。第一个测试用例检查从2到10的数字中是否存在完美平方4和9。第二个测试用例检查仅包含完美平方的列表。第三个测试用例检查不存在完美平方的情况。
在编程计算中,查找给定数组中的完美平方是一项常见的任务。通过使用平方根函数和整数检查函数,我们可以轻松地实现该算法。