Senior
Erklären Sie den Unterschied zwischen LIFO und FIFO anhand eines Beispiels für Stapel und Warteschlange.
sobes.tech KI
Antwort von AI
LIFO (Last In, First Out) und FIFO (First In, First Out) sind zwei Methoden zur Organisation von Daten.
- LIFO — der letzte Eingegangene, der erste Ausgehende. Beispiel: Stapel. Das zuletzt hinzugefügte Element wird zuerst entfernt.
- FIFO — der erste Eingegangene, der erste Ausgehende. Beispiel: Warteschlange. Elemente werden in der Reihenfolge entfernt, in der sie hinzugefügt wurden.
Beispiel 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("Entferntes Element (LIFO):", top)
// Warteschlange (FIFO)
queue := []int{1, 2, 3}
fmt.Println("Warteschlange:", queue)
first := queue[0]
queue = queue[1:] // dequeue
fmt.Println("Entferntes Element (FIFO):", first)
}
In diesem Beispiel entfernt der Stapel das zuletzt hinzugefügte Element, und die Warteschlange das erste.