Programa PHP para verificar Anagrama

Nos dan dos strings, debemos verificar si las strings son Anagram. Ejemplos:

Input : "anagram", "nagaram"
Output : yes

Input : "mat", "fat"
Output : no

Usamos la siguiente función incorporada para resolver este problema:

  • count_chars() : esta función generalmente tiene sintaxis count_chars(string, return_mode) se usa para realizar varias operaciones relacionadas con la string. Este parámetro es opcional. Toma valor a 0, 1, 2, 3, 4.

La idea para resolver este problema usando la función mencionada anteriormente es usar el valor 1, es decir, en este modo elegido, la función anterior devolverá una array con pares de valores clave, donde las claves son valores ASCII y los valores correspondientes serán el número de ocurrencias de ese valor ASCII. La array posee solo aquellas claves como valores ASCII cuya frecuencia es mayor que 0. 

php

// PHP code to check a given string is an anagram
// of another or not
<?php
    function is_anagram($string_1, $string_2)
    {
        if (count_chars($string_1, 1) == count_chars($string_2, 1))
            return 'yes';
        else
            return 'no';    
    }
 
    // Driver code
    print_r(is_anagram('program', 'grampro')."\n");
    print_r(is_anagram('card', 'cart')."\n");
?>

Producción:

yes
no

Complejidad de tiempo: O(n) donde n es el tamaño de la string.

Publicación traducida automáticamente

Artículo escrito por akash1295 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 *