Sobes.tech
Senior

Explique la diferencia entre LIFO y FIFO usando un ejemplo de pila y cola.

sobes.tech AI

Respuesta de la IA

LIFO (Último en entrar, primero en salir) y FIFO (Primero en entrar, primero en salir) son dos formas de organizar datos.

  • LIFO — el último en llegar, el primero en salir. Ejemplo: pila. El elemento añadido más recientemente se extrae primero.
  • FIFO — el primero en llegar, el primero en salir. Ejemplo: cola. Los elementos se extraen en el orden en que fueron añadidos.

Ejemplo en Go:

package main

import "fmt"

func main() {
    // Pila (LIFO)
    stack := []int{}
    stack = append(stack, 1) // push
    stack = append(stack, 2)
    fmt.Println("Pila:", stack)
    top := stack[len(stack)-1]
    stack = stack[:len(stack)-1] // pop
    fmt.Println("Elemento extraído (LIFO):", top)

    // Cola (FIFO)
    queue := []int{1, 2, 3}
    fmt.Println("Cola:", queue)
    first := queue[0]
    queue = queue[1:] // dequeue
    fmt.Println("Elemento extraído (FIFO):", first)
}

En este ejemplo, la pila extrae el último elemento añadido, y la cola el primero.