Resultado 2º Coding DOJO de 2012

11
abr
07h 33

Este segundo DOJO foi mais calmo, com menos participantes, talvez devido ao feriado prolongado.

Tivemos uma boa interação entre os participantes e o desafio proposto foi interessante.
O desafio era criar um array com todos os anagramas de uma palavra de 3 letras sem permitir repetições no caso de ter duas ou mais letras iguais. Sabendo que a quantidade de anagramas (permutações) é igual a n!
Nos testes com PHPUnit a ordem do Array influencia, então para os testes resolvemos ordenar os arrays.
Infelizmente tivemos um problema com o computador, então não pudemos finalizar o código, mas fizemos na mão e depois testamos a saída em outro computador sem PHPUnit.
A solução próxima obtida foi um algoritmo percorrendo o array de forma parecida ao Bubble Sort para tentar trocar todos os caracteres de lugar e depois usar array_unique para garantir que não houvessem repetições (http://codepad.org/1GSoO3wF)
A solução que encontrei, de forma iterativa e seguindo a proposta inicial que tivemos é http://codepad.org/0QzWr8GN (teste http://codepad.org/dG3B4U4o), porém este algoritmo funciona bem com até 3 letras, mas é insuficiente para entradas com 4 ou mais letras.
Solução do José Agripino:  https://github.com/agripinoduarte/Anagrams
As fotos do dojo no google+:
https://plus.google.com/photos/101381900054085098262/albums/5728319001915409217?hl=pt-BR
Retrospectiva do DOJO:
Pontos Bons:
– Interação
Pontos Ruins
– PC “muito quente” (notebook travou durante o DOJO)
– não teve lanche
– faltou um mapa ensinando a chegar na sala da FACOM
– não chegamos a uma solução
– sem internet na sala
Sugestões:
– verificar feriados com antecedencia
– fazer algum método de confirmação de presença no dia

Uma ideia sobre “Resultado 2º Coding DOJO de 2012

  1. Pingback: PHP News 6ª Ed. | PHPMS

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.

 

O que está rolando na lista?

 
'