Senior
Objasните razliku između LIFO i FIFO na primeru steka i reda.
sobes.tech АИ
Одговор од АИ
LIFO (Last In, First Out) i FIFO (First In, First Out) su dva načina organizacije podataka.
- LIFO — poslednji je ušao, prvi izlazi. Primer: stek. Poslednji dodat element se prvi izvlači.
- FIFO — prvi je ušao, prvi izlazi. Primer: red. Elementi se izvlače redom kojim su dodati.
Primer u Go:
package main
import "fmt"
func main() {
// Stek (LIFO)
stack := []int{}
stack = append(stack, 1) // push
stack = append(stack, 2)
fmt.Println("Stek:", stack)
top := stack[len(stack)-1]
stack = stack[:len(stack)-1] // pop
fmt.Println("Izvučen element (LIFO):", top)
// Red (FIFO)
queue := []int{1, 2, 3}
fmt.Println("Red:", queue)
first := queue[0]
queue = queue[1:] // dequeue
fmt.Println("Izvučen element (FIFO):", first)
}
U ovom primeru, stek izvlači poslednji dodat element, a red prvi.