BlackTDN :: LeetCode (17) :: Comparando Implementações do Desafio "Letter Combinations of a Phone Number" em Harbour e TOTVS TLPP
_Créditos das imagens: ChatGPT_ # LeetCode (17) :: Comparando Implementações do Desafio "Letter Combinations of a Phone Number" em Harbour e TOTVS TLPP O desafio [**"Letter Combinations of a Phone Number"**](https://leetcode.com/problems/letter-combinations-of-a-phone-number/description/) (Combinações de Letras de um Número de Telefone) é um problema clássico de programação que envolve a geração de todas as combinações possíveis de letras que um número de telefone pode representar, com base no mapeamento tradicional dos teclados de telefone. Abaixo, comparamos duas implementações desse desafio: uma em **Harbour** e outra em **TOTVS TLPP** (TOTVS Language Plus Plus). ## O Desafio Dada uma string contendo dígitos de 2 a 9, retorne todas as combinações possíveis de letras que esses dígitos podem representar. O mapeamento dos dígitos para as letras é o mesmo dos teclados de telefone tradicionais: - 2: "abc" - 3: "def" - 4: "ghi" - 5: ...
Eai Naldo blz,
ResponderExcluir(Isso não é uma critica, sem te conhecer tenho um respeito e admiração por você. Por correr atrás e disponibilizar tempo para atender a todos.) Porém...
...tenho visto você atendendo a pedidos das pessoas.
Seu blog pode acabar virando um site cheio de dicas mas como um forum, e isso nao seria bacana.
Faça o seguinte, quando alguém lhe perguntar,
?como faço?, ?deu erro?, ?me ensina?
Pegue o problema dele e explique a raiz, faça-o entender explique como as coisas acontecem e assim consequentemente ele ira aprender.
Sei de sua vontade de ajudar,
e admiro. Espero um dia poder contribuir para
o conhecimento de outros também.
Abs,
mais um Anônimo!
Os exemplos são a base para o conhecimento. A partir deles, os interessados em aprender, irão se aprofundar e, na dúvida, buscarão novos exemplos tornando o aprendizado uma constante.
ResponderExcluirMeus exemplos são quase que completos (complexos às vezes), mas têm um fim. Fazer pensar, incitar ao aprendizado e divulgar o conhecimento além de elucidar o desconhecido e perpetuar o saber.
"Tô Certo!"
[]s
иαldσ dj
Opa, eai pessoal.
ResponderExcluir(иαldσ dj, peço licença para completar seu post)
Uma dica para update do post!
Muitas pessoas (inclusive eu já fiz muito) fazem
um laço ::FOR:: percorrendo posições do array da
seguinte forma.
Ex:
For n := 1 To Len(aArrayExemplo)
/*
...Instruções
*/
Next n
Mas como foi mostrado no exemplo acima para o
laço ::WHILE::, a comparação que define a condição de parada
do laço, irá ocorrer para cada volta ou 'loop',
pois a condição será testada, neste exemplo a função ::Len(aArray)::
E nessa comparação a função ::LEN:: será executada
proporcionalmente ao tamanho do array usado.
Portanto, a forma que produz melhor performance é;
//Declare uma variável para controle dos laços e atribua a ela o valor retornado da função ::LEN::
nArraySize := Len(aArrayExemplo)
//Em seguida o ::FOR::
For n := 1 To nArraySize
/*
...Instruções
*/
Next n
Assim como foi explanado pelo иαldσ dj, as mesmas otimizações para um laço, são equivalentes para o ::WHILE:: e para o ::FOR::.
[]'s
Sérgio