Si hablamos de entrevistas técnicas, me da a mi que es de las típicas soluciones en las que te felicitan por ser creativo pero que lo soluciones sin truquitos
lol me acaban de hacer una entrevista en la que me recomendaron no hacer truquitos y me lo recomendo a regañadientes porque le gusto mi aproach, pero le pidieron que me pusiera de la manera clasica
@@carlogustavovalenzuelazepe5774 bro, si te piden reinventar la rueda no es buen lugar, la idea de mejorar es hacer las formas de la manera más óptima, obvio puede haber razones pero si te digo dame el absoluto de un número no te vas a poner a hacer operaciones raras, solo una validación y un return, de hecho la idea de programar es que las cosas típicas sean más sencillas. Pero bueno hay miles de gustos y sabores. Saludos.
No me vas a creer, pero justo estaba tratando de hacer eso y antes de conseguir la solución hice un break para comer y me puse a ver shorts y de la nada apareciste con este truco, me ahorraste mucho tiempo y seguramente no habría dado con una solución tan limpia
@@Kyevnieves crea un objeto {} y recorre el arreglo, por cada elemento haz esto objeto[arrayElem] += 1, luego muestra todas las key cuyo valor sea > 1, tiene orden de complejidad n
no puedo creer que un lenguaje tan utilizado no devuelva con un simple comando la cantidad de vece que se repite un valor dentro de un array, lenguajes legendarios lo hacían, inexplicable realmente
Una vez me pidieron hacer un programa sumamente largo y complejo en una entrevista y usando puro map, filter, reduce, find de todo termine haciéndolo en 5 minutos y todo en menos de 5 líneas 😂 El técnico estaba como “oye eso es un insulto para mi xd” Amo esa parte de JavaScript ❤️
A mí se me había ocurrido otra forma de hacerlo y además un poco más rápido, en los sets de java cuando introduces un nuevo elemento te devuelven false cuando no pueden guardar un elemento, así que se podría iterar el array introduciendo todos los elementos en el set hasta recibir un false. Lo único malo que tiene mi implementación es que requiere de un poco más de código, pero aún así creo que es más obvio de ver que hace
Podrías hacer un dropWhile y cuando detectes que no te deja añadirlo devuelves false, es una solución más fea y sigue siendo O(n), pero algo más óptimo de media.
En python para los conjuntos usamos la función intersection, x = {"apple", "banana", "cherry"} y = {"google", "microsoft", "apple"} z = x.intersection(y) -> #apple print(z)
No se a que viene el comment pero justo me hallo aprendiendo python y podemos hacer literalmente lo mismo q explica en el video usando listas y conjuntos
El truco no es correcto, ya que un new Set retorna un objeto, por lo que no existe la propiedad length en un Set. La manera correcta seria: `[...new Set(arr)].length < arr.length`
Vamos a hacer un programa que calculé el promedio o la media de x números... Ah sí, usamos una función y le pasamos los números y listo....😒 osea.... Yo no digo que este mal, pero se abusa demasiado de esto, por eso hoy en día el rendimiento en los programas, videojuegos y software en general está muy mal optimizado, los programadores de hoy en día ya no quieren pensar e ingeniar soluciones creativas usando estructuras de datos y optimizando el código a nivel ensamblador. Edit: Ah y con la llegada de la IA se va a poner peor, ya menos se va a querer pensar.
Con que programa puedo hacer un programa sencillo que pueda abrir en diferentes computadoras o celulares jaja qué no pese mucho, ejemplo uno que haga un examen y califiqué mandando a la lista los resultados
Si hablamos de entrevistas técnicas, me da a mi que es de las típicas soluciones en las que te felicitan por ser creativo pero que lo soluciones sin truquitos
Si conoces bien el lenguaje este es el mejor approach
lol me acaban de hacer una entrevista en la que me recomendaron no hacer truquitos y me lo recomendo a regañadientes porque le gusto mi aproach, pero le pidieron que me pusiera de la manera clasica
@@carlogustavovalenzuelazepe5774 bro, si te piden reinventar la rueda no es buen lugar, la idea de mejorar es hacer las formas de la manera más óptima, obvio puede haber razones pero si te digo dame el absoluto de un número no te vas a poner a hacer operaciones raras, solo una validación y un return, de hecho la idea de programar es que las cosas típicas sean más sencillas.
Pero bueno hay miles de gustos y sabores.
Saludos.
Soy nuevo, como seria esto de la manera clásica?
@@aquirozca approach se dice acercamiento en español
No me vas a creer, pero justo estaba tratando de hacer eso y antes de conseguir la solución hice un break para comer y me puse a ver shorts y de la nada apareciste con este truco, me ahorraste mucho tiempo y seguramente no habría dado con una solución tan limpia
Siguiente ejercicio: muestre los elementos duplicados
Yo: de vuelta a los bucles :(
Eso pensé yo de primeras, pero al menos en python la librería numpy tiene herramientas para eso
Jajajaj tal cual
Ahora mismo estoy buscando como mostrarlos 😭
@@Kyevnieves crea un objeto {} y recorre el arreglo, por cada elemento haz esto objeto[arrayElem] += 1, luego muestra todas las key cuyo valor sea > 1, tiene orden de complejidad n
Y el tiempo de ejecución? No será mayor?
no puedo creer que un lenguaje tan utilizado no devuelva con un simple comando la cantidad de vece que se repite un valor dentro de un array, lenguajes legendarios lo hacían, inexplicable realmente
que truco tan bueno midu! justo lo que necesitaba para resolver un bug del trabajo!
Interesante lo que se puede llegar a hacer con el objeto Set, muy buen truco midu! se agradece .
Una vez me pidieron hacer un programa sumamente largo y complejo en una entrevista y usando puro map, filter, reduce, find de todo termine haciéndolo en 5 minutos y todo en menos de 5 líneas 😂
El técnico estaba como “oye eso es un insulto para mi xd”
Amo esa parte de JavaScript ❤️
Lo mejor sería hacerlo con bucles para mejorar nuestra lógica creo yo
A mí se me había ocurrido otra forma de hacerlo y además un poco más rápido, en los sets de java cuando introduces un nuevo elemento te devuelven false cuando no pueden guardar un elemento, así que se podría iterar el array introduciendo todos los elementos en el set hasta recibir un false. Lo único malo que tiene mi implementación es que requiere de un poco más de código, pero aún así creo que es más obvio de ver que hace
Está genial,muchas gracias por el tip.
Fuaaa como que ya lo sabia, lo quecia SET pero jamaz se me hubiera ocurrido usarlo para eso... eres el pto amo Midu
Dios que bueno eres, he aprendido mucho contigo
Gracias, Daniel
Que trucazo gracias Midu!
Gracias a ti!!
Podrías hacer un dropWhile y cuando detectes que no te deja añadirlo devuelves false, es una solución más fea y sigue siendo O(n), pero algo más óptimo de media.
Trucazo de los buenos!
Trucazo! En Python se puede hacer algo similar, dado que existe también el Set.
En python para los conjuntos usamos la función intersection,
x = {"apple", "banana", "cherry"}
y = {"google", "microsoft", "apple"}
z = x.intersection(y) -> #apple
print(z)
No se a que viene el comment pero justo me hallo aprendiendo python y podemos hacer literalmente lo mismo q explica en el video usando listas y conjuntos
Grande Midu! super truco!
Me has dado ideas interesantes.
Muchas gracias 😊
Genial, crack! Justo ví el set hace poco solo que no lo busque y ahora justo sales con un ejemplo aaaaaah voy a buscar más que onda el set
Que tema estás usando? Me gustan las letras de neón
jajaja el bucle del gato... 😂😂😂👍👍
Buen truco pero en las entrevistas no te dejan usar el Set :(
Gracias Midu
Bueno, más se programa en la vida real que en las entrevistas. También tiene un poco de bichos que no dejen usar Set en una entrevista.
Que es enserio y que quieren un for con ifs o un reduce??
Si en una empresa no te dejan usar las más nuevas tecnologías. No vale la pena.
@@midudevya se porque lo hacen es para medir tu lógica y conocimiento de estructuras de datos.
@@jhondowell3055lo hacen para medir tu conocimiento en estructura de datos.
Genial. Gracias
Trucazo tiene lógica
Por qué no utilizas function para crear una función?
Se ve muy complicado, me imagino debe de haber una función ya creada de alguna librería que permita verificar eso fácilmente
Mientras menos dependas de librerías, mejor
Capo mi rey
Cuidado si se trata de array de objetos.
Gracias pot el truco
en el caso que sea un array de objetos, elimina el primer elemento repetido o el último???
Muy bueno. Estimo que Set hace los bucles por uno
Cuál es la complejidad temporal de esto?
Si pero no lo corristes para ver si funciona.
Por que utilizas una función lamda?
Como se llama el tema del visual?
Bravisimo!!!
Gracias!! 🤗
cuál es el tema que usa?
y para saber cuales son los elementos repetidos?
Buen video!, yo tambien quiero ese neon en las letras, sabes como puedo tenerlo en linux?
Pero y si también necesitas saber cual es el valor repetido?
La vieja confiable: los bucles
El truco no es correcto, ya que un new Set retorna un objeto, por lo que no existe la propiedad length en un Set. La manera correcta seria:
`[...new Set(arr)].length < arr.length`
Puse en pausa el video intentado dar una solución creativa, pero nada tan compacto ni de lejos...
Wow q trucazo, ya me siento el rey de los arrays !
jajajaja El rey de los arrays. 🤣
ARRey
Está bueno el truco, pero habría que ver qué tan eficiente es y me parece que esto lo hace menos legible
Cómo se llama el tema de su vscode
Como haces para que quede la forma de ma flecha ?
Muy bueno
:0000 pedazo trucaso, laik y suscribido
Que buen truco (sic) Si buscaras trabajo, que digo adiós inmediatamente!
Vengo por el adventJS :)
Excelente, tendrías que trabajar en la nueva version de JavaScript y agregar esa funcion nativa jaja
Puedes hacer un snipet personalizado y listo.
Haces la combinación de teclas y listo ya tienes todo
Nice. Igual pierde sentido cuando te pide algo más como que indiques en que posiciones están los repetidos o cuales son.
Es cuestión de saber usar los SET
Great! 😃
En c# habrá alguna funcion asi? 🤔
El distinct y procedes a hacer lo mismo, ver si la lo longitud es distinta.
Y si fuese un array de objetos? 🤔
Pero solo sirve para saber si existen...
Podemos usar esa misma opción usando. Filter
Seguro? Cómo lo harías con filter?
Vamos a hacer un programa que calculé el promedio o la media de x números... Ah sí, usamos una función y le pasamos los números y listo....😒 osea.... Yo no digo que este mal, pero se abusa demasiado de esto, por eso hoy en día el rendimiento en los programas, videojuegos y software en general está muy mal optimizado, los programadores de hoy en día ya no quieren pensar e ingeniar soluciones creativas usando estructuras de datos y optimizando el código a nivel ensamblador.
Edit: Ah y con la llegada de la IA se va a poner peor, ya menos se va a querer pensar.
Hice el mismo ejercicio y me da todo false cuando lo imprimo. Alguien sabe porque? 😔 Soy principiante
Yo aprendí variable ^= variable si hay un repetido al final arroja un true :3
Si estoy mal corrijan pls
Que lo haga con un for anidado dice
Y digamos, para uno cuando es nuevo en el mundo de la programacion, para que se usa eso?
Generalmente en reportes en donde necesites información filtrada como: personas que solo hicieron un aporte en todo el año, escenarios hay muchos.
Con que programa puedo hacer un programa sencillo que pueda abrir en diferentes computadoras o celulares jaja qué no pese mucho, ejemplo uno que haga un examen y califiqué mandando a la lista los resultados
Html y javascript, podrás abrirlo en cualquier dispositivo desde el navegador.
Naaahhh, siento que es mejor un mapa contador de frecuencias
Yo lo hago con el reduce :D
no entiendo como funciona la logica de javascrip.
python usa el mismo concepto llamando a la funcion set
brutal
Trucazoooo
Trucazo
😮
java ya no da soporte y la gente se vuelve loca programando XD
Ooooooo 🤯
Jajajaja pero sin funciones pues xd
.
Que trucazo he?
Muy ingenioso pero no sirve para absolutamente nada
xD Esa línea de código está en producción para un producto con millones de visitas al mes. Vuelve a tu cueva.
@@midudev MIDUGOD mandando a dormir a los haters
che, por eso no puedes conseguir más de 50k de paga
si. pero no las cuenta
Muy buena