Programa Php para encontrar el siguiente elemento mayor

Dada una array, imprima el siguiente elemento mayor (NGE) para cada elemento. El siguiente elemento mayor para un elemento x es el primer elemento mayor en el lado derecho de x en la array. Elementos para los que no existe un elemento mayor, considere el siguiente elemento mayor como -1. 

Ejemplos: 

  1. Para una array, el elemento más a la derecha siempre tiene el siguiente elemento mayor como -1.
  2. Para una array ordenada en orden decreciente, todos los elementos tienen el siguiente elemento mayor como -1.
  3. Para la array de entrada [4, 5, 2, 25], los siguientes elementos mayores para cada elemento son los siguientes.
Element       NGE
   4      -->   5
   5      -->   25
   2      -->   25
   25     -->   -1

d) Para la array de entrada [13, 7, 6, 12}, los siguientes elementos mayores para cada elemento son los siguientes.  

  Element        NGE
   13      -->    -1
   7       -->     12
   6       -->     12
   12      -->     -1

Método 1 (Simple) 
Use dos bucles: El bucle exterior recoge todos los elementos uno por uno. El bucle interior busca el primer elemento mayor para el elemento elegido por el bucle exterior. Si se encuentra un elemento mayor, ese elemento se imprime como el siguiente; de ​​lo contrario, se imprime -1.

A continuación se muestra la implementación del enfoque anterior:

PHP

<?php
// Simple PHP program to print next
// greater elements in a given array
  
/* prints element and NGE pair for 
   all elements of arr[] of size n */
function printNGE($arr, $n)
{
    for ($i = 0; $i < $n; $i++)
    {
        $next = -1;
        for ($j = $i + 1; $j < $n; $j++)
        {
            if ($arr[$i] < $arr[$j])
            {
                $next = $arr[$j];
                break;
            }
        }
        echo $arr[$i]." -- ". $next."
";
          
    }
}
  
    // Driver Code
    $arr= array(11, 13, 21, 3);
    $n = count($arr);
    printNGE($arr, $n);
      
// This code is contributed by Sam007
?>
Producción

11 -- 13
13 -- 21
21 -- -1
3 -- -1

Complejidad de Tiempo: O(N 2
Espacio Auxiliar: O(1)
 

¡ Consulte el artículo completo sobre el próximo elemento mayor para obtener más detalles!

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *