Uma coleção de algoritmos comuns implementados em PHP. A coleção é baseada em "Cracking the Coding Interview" de Gayle Laakmann McDowell
Você pode encontrar o pacote no Packagist: https://packagist.org/packages/doganoo/php-algorithms
"Algoritmos + Estruturas de Dados = Programas"
Os algoritmos fazem parte do kit de ferramentas básico para resolver problemas. Estruturas de dados organizam os dados de maneira eficiente. A combinação de ambos permite a criação de software inteligente e eficiente.
Você pode instalar o pacote via compositor:
composer require doganoo/php-algorithms
Aqui está um exemplo de árvore binária:
use doganoo PHPAlgorithms Datastructure Graph Tree BinaryTree ;
$ binaryTree = new BinaryTree ();
$ binaryTree -> insertValue ( 50 );
$ binaryTree -> insertValue ( 25 );
$ binaryTree -> insertValue ( 75 );
$ binaryTree -> insertValue ( 10 );
$ binaryTree -> insertValue ( 100 );
echo json_encode ( $ binaryTree );
produz
{ " nodes " :{"value": 50 ,"left":{"value": 25 ,"left":{ " value " : 10 ,"left":null,"right":null},"right":null},"right":{ " value " : 75 ,"left":null,"right":{"value": 100 ,"left":null,"right":null}}}}
Sinta-se à vontade para enviar uma solicitação pull para adicionar mais algoritmos e estruturas de dados. Certifique-se de ler https://github.com/doganoo/PHPAlgorithms/wiki/Best-Practices antes de abrir um PR. Considere também https://github.com/doganoo/PHPAlgorithms/blob/master/CONTRIBUTING.md.
Doğan Uçar (@doganoo)
MIT