Muy buenas, les saluda Miguel y esta vez les traigo este nuevo tutorial.
Desde que me gradué del campo de entrenamiento de codificación, me he dedicado la mayor parte de mi tiempo a crear aplicaciones y sitios web; lo cual es bueno para un currÃculum, pero ¿qué pasa con el proceso de entrevista real?
La mayorÃa de los desarrolladores con los que he hablado han aplaudido este enfoque, pero se han apresurado a hacerme saber que esas aplicaciones no importarán si no puedo aprobar preguntas sobre algoritmos que definitivamente se me lanzarán.
Por eso, hoy voy a compartir dos algoritmos de codificación comunes, asà como sus soluciones y algunos enlaces a recursos que le ayudarán a ampliar su conocimiento de los algoritmos.
FizzBuzz
FizzBuzz es definitivamente uno de los algoritmos más comunes que se le pedirá que resuelva. Las instrucciones generalmente le piden que escriba un programa que la consola registre o devuelva el número 1
a n
.
Si un número es divisible (o un múltiplo) de 3 - imprima 'fizz'
, un múltiplo de 5 - imprima "buzz"
, un múltiplo de 3
y 5 - imprima
«fizzbuzz».
Para esta solución, deberá comprender "for bucles"
, "if else"
declaraciones, y el módulo (resto) operador.
El primer elemento que debemos considerar es cómo verificamos que un número sea divisible de cualquier número. El operador de módulo nos permite comprobar cuál será el resto de un número.
El resultado de la función, que se muestra arriba, será 1
. Esto se debe a que 3
por 3
es 9
y el resto de 9
en 10
es 1
.
Entonces, con esa breve explicación, construyamos una declaración para verificar si un número es un múltiplo de 3
y 5
(que también debe ser múltiplo de 15
).
Entonces, lo que estamos diciendo aquà es que si un número (n)
tiene un resto de 0 (=== 0)
tanto para 3 como para (&&) 5
, entonces el registro de la consola es "fizzbuzz"
.
De lo contrario, el registro de la consola "no es un múltiplo de 3 o 5"
. También podrÃamos escribir "if (n% 15 === 0)"
para acortar el código ya que 15
es el mÃnimo común múltiplo de 3
y 5
.
Ahora que tenemos la parte más difÃcil fuera del camino, terminemos el código.
¡Maravilloso! Como puede ver en la lÃnea 16
, nuestra declaración for está creando una variable de contador "i"
, configurándola en 1
y preguntando si "i"
es menor o igual que "n"
, luego ejecute el siguiente código y aumente "i"
en uno después cada iteración.
El código que se está ejecutando verifica si la variable "n"
es divisible entre 3
y 5
, luego 3
, luego 5
. Si no pasa ninguna de las declaraciones, simplemente registre el número en la consola. Ahà lo tienes, se pasó "fizzbuzz"
, asà que intentemos uno más.
PalÃndromos
Un palÃndromo es una palabra o una serie de palabras que son iguales ya sea que se escriban hacia adelante o hacia atrás, como "racecar"
. Este puede parecer desalentador, pero es bastante fácil una vez que ve la solución.
Con esta función usaremos algunos métodos de matriz y cadena JS
, .split
, .reverse
 y .join
.. Lo que queremos hacer primero es dividir la cadena en una matriz usando .split ('')
.
Esto dividirá cada carácter de una cadena y lo colocará en una matriz, como en el ejemplo siguiente.
Ahora queremos usar el método .reverse
en nuestra matriz, que como su nombre lo indica, invierte la matriz.
.reverse
en nuestra matriz.Ahora queremos .join()
cada elemento de la matriz y verificar si es el mismo que la cadena pasada a la función.
== y ===
. Este último devolverá un valor booleano en función de si los elementos que se comparan son EXACTAMENTE
iguales. En este caso no lo son.Como puede ver, eso no estuvo tan mal. Se necesita tiempo para aprender sus métodos de cadena y matriz, pero se encontrará usándolos cuanto más practique sus algoritmos.
Ahora, antes de compartir enlaces a algunas fuentes increÃbles, Por favor, comprenda que esto llevará tiempo y paciencia. Para algunos de nosotros, es un desafÃo analizar los problemas y ser metódicos en cada paso.
Para otros, parpadearán y tendrán la respuesta. No se preocupe demasiado por dónde cae, solo por cómo se levanta y vuelve a intentarlo. Si se siente frustrado, tómese un descanso de 10
a 15
minutos para hacer otra cosa.
Si no puede encontrar un código, no se avergüence de buscar la respuesta en lÃnea o en un libro. Todos lo hacemos. La única forma de mejorar en la comprensión del código y los algoritmos es mediante prueba, error, aprendiendo de los demás y practicando.
Con todo lo dicho, aquà hay algunas formas excelentes de aprender y probar sus habilidades de algoritmos, asà como los métodos de JavaScript:
Gracias por leer este tutorial.
Añadir comentario