Mostrando las entradas con la etiqueta link de descarga. Mostrar todas las entradas
Mostrando las entradas con la etiqueta link de descarga. Mostrar todas las entradas

jueves, 19 de junio de 2025

Two Sum | ¿Dos Sumas? | LeetCode | Hasta encontrar trabajo 1

 A decir verdad no sé si exista una traducción literal para "Two Sum", pero bueno, resolvamos esto de una vez por todas con una explicación sencilla, en español y sin dar tanta vuelta a las explicaciones científicas, técnicas o intelectuales porque ya saben que a nosotros los ingenieros nos gusta andar de "pensantes" en todo momento.

Problema (original):

Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target.

You may assume that each input would have exactly one solution, and you may not use the same element twice.

You can return the answer in any order.

 Example 1:

Input: nums = [2,7,11,15], target = 9
Output: [0,1]
Explanation: Because nums[0] + nums[1] == 9, we return [0, 1].

Problema (traducido por mí):

Dado un arreglo de enteros y un entero designado, obtener las posiciones en el arreglo de los dos números que sumados deben dar como resultado el entero designado.

Es decir que si tienes un arreglo [2, 7, 11, 15] y tu designado es el 9, entonces tus números que sumados dan esa cantidad son el 2 y el 7, los cuales se encuentran en las posiciones [0] y [1] de nuestro arreglo.

Hay que dar por hecho que en todo momento el entero designado tendrá una solución implícita en el arreglo, así que no te preocupes de poner "validaciones" de ningún tipo, solo asegúrate de buscar la respuesta correcta en el menor tiempo posible.

La respuesta entonces sería [0, 1] o [1, 0], finalmente no importa el orden.

Otro ejemplo:


Sermón:

La lógica de esto no es la gran cosa, en realidad es muy sencillo solo colocar un par de ciclos y finalmente encontrarás la respuesta, el verdadero reto es que tu desarrollo sea rápido, preciso y totalmente funcional.
En programación existen 'N' caminos para llegar al mismo destino, igual que en la vida, así que haz tu mejor esfuerzo, en realidad si puedes resolver un problema de una manera, habrás aprendido algo, aunque no sea lo mejor de lo mejor, habrás llegado al resultado esperado y puedes seguir mejorando siempre.

Lógica:

1.- Recorrer todo el arreglo con un ciclo
2.- Comprobar cada número del arreglo sumado con el resto para encontrar la respuesta
3.- Validar que efectivamente encontramos la respuesta
4.- Retornar la respuesta

Programación:

1.- Coloqué un ciclo for que va desde la posición 0 (variable x) hasta la última del arreglo
2.- Dentro de ese ciclo hice otro que comenzará desde una posición adelante de nuestro primer ciclo (variable y = x + 1) y de igual manera terminará hasta la última posición del arreglo.
3.- Ahora sí, dentro del segundo ciclo comencé a validar si la suma del arreglo en la posición 'x' (ARREGLO[x]) y el arreglo en la posición 'y' (ARREGLO[y])
4.- Una vez encontrado el valor, retorno las posiciones 'x' y 'y'

¿Complejo?, no realmente, ¿óptimo?, no realmente, pero sí funcional, hay otras formas de realizar esta búsqueda más rápidamente, utilizando un estructuras de datos más veloces, pero para aprender eso primero tienes que pasar por esto, y practicar hasta mejorar tanto que tú mismo puedas criticar tu propio código.

Resultado:



¡DESCARGA FAST!

Todo el código que quieras, ¡GRATIS!, programación totalmente gratuita.
Comenta, opina, exprésate y déjame saber si quieres algo específico, si algo está mal o si no te gusta algo, para hacer que te guste

martes, 28 de febrero de 2023

Conocí ChatGPT | Las IA ya no son Zzzz

 Efectivamente, soy un boomer conociendo nueva tecnología, pero es parte del trabajo de alguien que se dedica a las tecnologías de la información.

Hace tiempo cuando recién entraba al mundo de la computación conocí chatbots muy austeros que lograban impresionar a la gente de ese tiempo, unos 20 años atrás, como lo fue CleverBot, y hace unos 10 años más o menos llegó SimSimi.

 

 

Supongo que no es necesario el contexto, pero por si no lo sabías estas dos tecnologías por llamarlos de alguna manera, sí evolucionaron, "SÍ APRENDIERON". Hablo solo de los más comerciales, quizá existan más por ahí perdidos en el limbo, pero específicamente estos dos dieron mucho de qué hablar porque eran la sensación del momento, es decir, que pudieras "chatear" con alguien ya era una novedad, pero chatear con la misma computadora y te respondiera cual si fuera una persona resultaba muy atractivo para todo el mundo.

 Hoy día, esa tecnología dejó un poco atrás los pañales, pues si en esos momentos los chats podían sostener una conversación ligeramente fluida y comprensible, ahora ChatGPT ha roto la barrera entre la coherencia y el razonamiento humano. Logra entender instrucciones complejas, logra realizar operaciones que quizá muchos imaginamos pero jamás imaginamos vivirlas.

 Mi experiencia con esta IA específicamente ha sido pedirle código fuente, código que obviamente analizo y ejecuto para realizar alguna actividad específica, obviamente necesita entrenamiento, pero fuera de ello te da muchísimas opciones libres de derechos, libres de todo lo que puedas encontrar en internet y sobre todo una explicación lógica de por qué fue lo que hizo así.

 No hay ningún motivo para pensar que esta tecnología en algún momento nos va a reemplazar, pues siempre ha ocurrido algo revolucionario que vuelve posible que el trabajo de cien hombres lo pueda realizar uno solo utilizando una máquina, pero esto siempre da pauta a nuevas oportunidades de trabajo, de actividades, de un montón de funciones.

Recomiendo 100% esta herramienta, puede ser útil para casi cualquier ámbito. Justo hace unos días un amigo le pidió que hiciera un invitación para un bautizo, pero no porque la necesitara, sino porque es estúpidamente inteligente la herramienta y todos los días aprende más y más.

 De nada por sus futuras wins ZELDA:  ChatGPT

También pueden encontrar su app oficial en PlayStore y AppStore.