Senior
Explique la différence entre LIFO et FIFO en utilisant un exemple de pile et de file d'attente.
sobes.tech IA
Réponse de l'IA
LIFO (Last In, First Out) et FIFO (First In, First Out) sont deux méthodes d'organisation des données.
- LIFO — le dernier arrivé, le premier sorti. Exemple : pile. L'élément ajouté en dernier est extrait en premier.
- FIFO — le premier arrivé, le premier sorti. Exemple : file d'attente. Les éléments sont extraits dans l'ordre dans lequel ils ont été ajoutés.
Exemple en Go :
package main
import "fmt"
func main() {
// Pile (LIFO)
stack := []int{}
stack = append(stack, 1) // empiler
stack = append(stack, 2)
fmt.Println("Pile:", stack)
top := stack[len(stack)-1]
stack = stack[:len(stack)-1] // dépiler
fmt.Println("Élément extrait (LIFO):", top)
// File d'attente (FIFO)
queue := []int{1, 2, 3}
fmt.Println("File d'attente:", queue)
first := queue[0]
queue = queue[1:] // retirer
fmt.Println("Élément extrait (FIFO):", first)
}
Dans cet exemple, la pile extrait le dernier élément ajouté, et la file le premier.