👨💻 Soluciones en JavaScript / TypeScript
Comparto mis soluciones:
.
Introducción
Arrays y Strings para resolver algoritmos avanzados
Arrays y Strings en detalle
Dos Apuntadores
Patrón de Dos Apuntadores
Verifying Alien Dictionary: análisis del problema
Solución de Verifying Alien Dictionary
Playground: Verifying Alien Dictionary
Programando Verifying Alien Dictionary con JavaScript
Merge Two Sorted Lists: análisis del problema
Solución de Merge Two Sorted Lists
Playground: Merge Two Sorted Lists
Programando Merge Two Sorted Lists con Python
Container With Most Water: análisis del problema
Solución de Container With Most Water
Playground: Container with Most Water
Programando Container With Most Water con Java
Reto: Trapping Rain Water
Ejercicios recomendados de Dos Apuntadores
Ejercicios resueltos de Dos Apuntadores
Ventana Deslizante
Patrón de Ventana Deslizante
Longest Substring Without Repeating Characters: análisis del problema
Solución de Longest Substring Without Repeating Characters
Playground: Longest Substring Without Repeating Characters
Programando Longest Substring Without Repeating Characters con Python
Ejercicios recomendados de Ventana Deslizante
Ejercicios resueltos de Ventana Deslizante
Búsqueda Binaria
Algoritmo de Búsqueda Binaria
Search in Rotated Arrays: análisis del problema
Solución de Search in Rotated Arrays
Playground: Search in Rotated Arrays
Programando Search in Rotated Arrays
Search 2D Array Matrix: análisis del problema
Solución de Search 2D Array Matrix
Playground: Search 2D Array Matrix
Programando Search 2D Array Matrix
Próximos pasos
Toma el Curso Avanzado de Algoritmos: Estructuras de Datos Lineales
No se trata de lo que quieres comprar, sino de quién quieres ser. Invierte en tu educación con el precio especial
Antes: $249
Paga en 4 cuotas sin intereses
Termina en:
Lectura
Espero que hayas solucionado o al menos hayas intentado solucionar los retos de la clase anterior. De ser así, aquí te comparto la manera en que los solucioné.
Recuerda que hay muchas formas de resolver un mismo problema, cuéntame qué te parecen estas soluciones, también revisa y aporta a las soluciones de otros Platzinautas. 👨🚀💚
...
Regístrate o inicia sesión para leer el resto del contenido.
Aportes 5
Preguntas 0
Comparto mis soluciones:
.
Embarrada que la solución del ejercicio 3 no esté, me hubiera gustado ver como la profe manejaba esa k.
Solución en go para max consecutive ones
/*
- Have two pointers start, end = 0
- Move end to the right
- Count the amount of 1 (ones)
- Calc the max length (start - end + 1)
- Calc the amount of flipped values (length - ones)
- When the amount of fillped values > k (it means we have flipped k times some 0s)
start a new loop that move the start pointer foward
- If the new start value is 1, decrease number of 1s.
- The inner loop ends, when we are able to flip 0 again; (length - ones > k); then continue with the
max length calc and moving the right pointer
*/
func maxOneConsecutive(nums []int, k int) int {
var start, end, max, ones int
for end <= len(nums)-1 {
if nums[end] == 1 {
ones++
}
// length - ones = number of flipped 0
// we continue with the calc until we find a range where
// we are allow to flip again
for (end-start+1)-ones > k {
// We are going to move the left pointer to calc
// new possible consecutives 1, so we found a one
// we remove it from the ones liest
if nums[start] == 1 {
ones--
}
// move the left pointer
start++
}
max = int(math.Max(float64(max), float64(end-start+1)))
end++
}
return max
}
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?