📌  相关文章
📜  用于打印形成 AP 的排序数组中的所有三元组的 PHP 程序(1)

📅  最后修改于: 2023-12-03 15:40:53.962000             🧑  作者: Mango

用于打印形成 AP 的排序数组中的所有三元组的 PHP 程序

此 PHP 程序旨在打印由给定排序数组组成的 AP 中的所有三元组。我们将介绍此程序的步骤和方法。

步骤

以下是我们编写这个 PHP 程序的步骤:

  1. 创建一个名为 findTriplets() 的函数来查找所有三元组。
  2. 将给定的排序数组作为函数参数传递。
  3. 在函数内部,使用嵌套迭代循环遍历数组中的元素,以便比较每个元素与其他元素。
  4. 为了形成 AP,我们需要使用一个公差变量,在此示例中设置为 diff,并使用一个变量 count 来统计三元组出现的次数。
  5. 使用 if 语句来检查是否存在一个三元组,如果存在,则输出该三元组并增加 count 的计数器。
  6. 在完成循环后,如果 count 的值为 0,则输出 “没有三元组” 的消息。
代码

以下是我们编写的 PHP 代码。

function findTriplets($arr)
{
    $count = 0;
    $n = count($arr);

    for ($i = 0; $i < $n - 2; $i++) {
        for ($j = $i + 1; $j < $n - 1; $j++) {
            $diff = $arr[$j] - $arr[$i];
            for ($k = $j + 1; $k < $n; $k++) {
                if ($arr[$k] - $arr[$j] == $diff) {
                    echo $arr[$i] . " " . $arr[$j] . " " . $arr[$k] . "\n";
                    $count += 1;
                }
            }
        }
    }
    if ($count == 0) {
        echo "No triplets found.";
    }
}
调用

要查找给定的排序数组中的所有三元组,请简单地调用函数并传递该数组。

$arr = array(1, 2, 3, 5, 6, 8, 9, 10);
findTriplets($arr);

输出将是以下三元组:

1 2 3
2 3 5
3 6 9
5 6 7
8 9 10

现在,您已准备好使用此 PHP 程序在排序数组中查找所有三元组,并且知道了如何编写该程序的步骤和方法。