Senior
Ներկայացրեք LIFO և FIFO տարբերությունը՝ օգտագործելով տախտակ և հերթի օրինակ։
sobes.tech AI
Պատասխան AI-ից
LIFO (Last In, First Out) և FIFO (First In, First Out) երկու եղանակ են տվյալների կազմակերպման:
- LIFO — վերջերս մուտք գործածը, առաջինը դուրս է գալիս։ Օրինակ՝ շերտ։ Վերջին ավելացված տարրն առաջինը հանվում է։
- FIFO — առաջին մուտք գործածը, առաջինը դուրս է գալիս։ Օրինակ՝ հերթ։ Ավելացված տարրերը հանվում են ըստ հերթականության։
Օրինակ Go-ում՝
package main
import "fmt"
func main() {
// Շերտ (LIFO)
stack := []int{}
stack = append(stack, 1) // push
stack = append(stack, 2)
fmt.Println("Շերտ:", stack)
top := stack[len(stack)-1]
stack = stack[:len(stack)-1] // pop
fmt.Println("Հանված տարր (LIFO):", top)
// Հերթ (FIFO)
queue := []int{1, 2, 3}
fmt.Println("Հերթ:", queue)
first := queue[0]
queue = queue[1:] // dequeue
fmt.Println("Հանված տարր (FIFO):", first)
}
Այս օրինակով, շերտը հանում է վերջին ավելացված տարրն, իսկ հերթը՝ առաջինը։