Senior
Stack və növbə nümunəsi ilə LIFO və FIFO arasındakı fərqi izah edin.
sobes.tech Süni İntellekt
AI-dan cavab
LIFO (Last In, First Out) və FIFO (First In, First Out) məlumatların təşkil olunmasının iki üsuludur.
- LIFO — son daxil olan, ilk çıxar. Nümunə: yığın. Ən son əlavə olunan element ilk çıxarılır.
- FIFO — ilk daxil olan, ilk çıxar. Nümunə: növbə. Elementlər əlavə olunduqları ardıcıllıqla çıxarılır.
Go dilində nümunə:
package main
import "fmt"
func main() {
// Yığın (LIFO)
stack := []int{}
stack = append(stack, 1) // push
stack = append(stack, 2)
fmt.Println("Yığın:", stack)
top := stack[len(stack)-1]
stack = stack[:len(stack)-1] // pop
fmt.Println("Çıxarılmış element (LIFO):", top)
// Növbə (FIFO)
queue := []int{1, 2, 3}
fmt.Println("Növbə:", queue)
first := queue[0]
queue = queue[1:] // dequeue
fmt.Println("Çıxarılmış element (FIFO):", first)
}
Bu nümunədə, yığın əlavə olunan son elementi çıxarır, növbə isə ilk əlavə olunan elementi.