2
สแตก (Stack) คือโครงสร้างข้อมูลชนิด
หนึ่งที่มีการเก็บข้อมูลแบบเรียงลำาดับ การใส่ข้อมูล
เข้าหรือนำาข้อมูลออกจากสแตกกระทำาที่บริเวณ
เดียวกันซึ่งเรียกว่า ทอป (top) ของสแตกและ
ลักษณะที่สำาคัญคือ
ข้อมูลที่ใส่หลังสุด จะถูกนำาออกมาจากสแตกเป็น
ลำาดับแรกสุด (last in, first out หรือ LIFO)
การดำาเนินงานของสแตก
ะกอบด้วยกระบวนงานหลัก 2 กระบวนงานคือ
พุช (push)
พอพ (pop)
3.
3
push คือ การนำาข้อมูลใส่ลงไปในส
แตกs เมื่อต้องการใส่ข้อมูล i ในสแตกดังนั้น
การดำาเนินงานของกระบวนงาน push(s,i) คือ
ใส่ ข้อมูล i ลงไปที่ทอปของสแตก s
pop คือ การนำาข้อมูลออกจากส่วนบน
สุดของสแตก และนำาค่านี้ไปใส่ในตัวแปร i
สามารถเขียนด้วยคำาสั่ง i = pop(s)
R
D
M
D
M
Push box R
ontoempty
stack
Push box D
onto stack
Push box M
onto stack
Pop box M
from stack
ลักษณะการทำางานของโครงสร้างข้อลักษณะการทำางานของโครงสร้างข้อ
มูลสแตกมูลสแตก (Stack)(Stack)
Pushing and Popping a stack (Continue)
20.
Q
S
Push box Q
ontostack
Push box S
onto stack
ลักษณะการทำางานของโครงสร้างข้อลักษณะการทำางานของโครงสร้างข้อ
มูลสแตกมูลสแตก (Stack)(Stack)
Pushing and Popping a stack (Continue)