Sobes.tech
Senior

Leg het verschil uit tussen LIFO en FIFO aan de hand van een voorbeeld van een stapel en een wachtrij.

sobes.tech AI

Antwoord van AI

LIFO (Last In, First Out) en FIFO (First In, First Out) zijn twee manieren om gegevens te organiseren.

  • LIFO — de laatste die binnenkomt, wordt als eerste verwijderd. Voorbeeld: stapel. Het laatst toegevoegde element wordt als eerste verwijderd.
  • FIFO — de eerste die binnenkomt, wordt als eerste verwijderd. Voorbeeld: rij. Elementen worden in de volgorde van toevoeging verwijderd.

Voorbeeld in Go:

package main

import "fmt"

func main() {
    // Stapel (LIFO)
    stack := []int{}
    stack = append(stack, 1) // push
    stack = append(stack, 2)
    fmt.Println("Stapel:", stack)
    top := stack[len(stack)-1]
    stack = stack[:len(stack)-1] // pop
    fmt.Println("Verwijderd element (LIFO):", top)

    // Rij (FIFO)
    queue := []int{1, 2, 3}
    fmt.Println("Rij:", queue)
    first := queue[0]
    queue = queue[1:] // dequeue
    fmt.Println("Verwijderd element (FIFO):", first)
}

In dit voorbeeld verwijdert de stapel het laatst toegevoegde element, en de rij het eerste toegevoegde element.