📜  计算给定数组中存在完美平方的数组元素(1)

📅  最后修改于: 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。第二个测试用例检查仅包含完美平方的列表。第三个测试用例检查不存在完美平方的情况。

结论

在编程计算中,查找给定数组中的完美平方是一项常见的任务。通过使用平方根函数和整数检查函数,我们可以轻松地实现该算法。