ดาวน์โหลดงานนำเสนอ
งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ
ได้พิมพ์โดยVirote Sutabuhr ได้เปลี่ยน 10 ปีที่แล้ว
1
สแตค(stack) โครงสร้างข้อมูลแบบ Stack - การสร้าง Stack
2
Stack Structure ประกอบด้วยสมาชิกที่เรียงต่อกันเป็นแถว โดยการนำสมาชิกเข้าและออกจากสแตกจะกระทำที่ด้านปลายหรือด้านบน Top of the stack
3
การดำเนินการของ Stack
การนำสมาชิกเข้าสู่สแตก ข้อมูลจะอยู่ด้านบนเสมอ การนำสมาชิกออกจากสแตก จะต้องนำข้อมูลด้านบนออกก่อน หรือเรียกว่าข้อมูลที่เข้าสแตกก่อนจะออกทีหลังและข้อมูลที่เข้าสแตกทีหลังจะออกก่อน LIFO Last-In , First-out
4
ตัวอย่างการดำเนินการของ Stack
B C C B A A B A C B A B A A ประโยชน์ช่วยจดจำการกระโดดไปมาระหว่างโปรแกรมย่อยและโปรแกรม Recursive
5
การดำเนินการเกี่ยวกับ Stack (Operation on Stack)
**การนำสมาชิกใหม่เข้าสู่ด้านบนสุดของสแตก Push ซึ่งจะต้องใช้ Stack Pointer ชี้ไปยังช่องว่างถัดไปก่อน **การนำสมาชิกออกจากด้านบนสุดของสแตก Pop ซึ่งจะต้องใช้ Stack Pointer ชี้ไปยังตำแหน่งบนสุดก่อน
6
การนำสมาชิกเข้าและออกจากสแตก
Push (Stack,2) Push (Stack,4) Push (Stack,6) Pop (Stack,Item) Push (Stack,7) 2 2 4 2 4 6 2 4 Item = 6 2 Item = 4 2 7
7
การตรวจสอบ Stack Stack ว่าง EmptyStack ถ้าว่างค่าจะเป็น True
ถ้าไม่ว่างค่าจะเป็น False ถ้าทำการลบในขณะที่ Stack ว่างจะเกิด Underflow Stack เต็ม FullStack ถ้าสมาชิกเต็มค่าจะเป็น True ถ้าสมาชิกไม่เต็มค่าจะเป็น False ถ้าเพิ่มในขณะที่ Stack ยังเต็มอยู่จะเกิด Overflow
8
การสร้าง Stack ด้วยภาษาปาสคาล
Const Max = 100; Type Stackltem = char; Stack = record Item : array[1..Max] of Stackltem; Top : 0..Max; End;
9
การนำข้อมูลเข้า Stack ด้วยภาษาปาสคาล
function push(var s:stack; x:Stackltem) : boolean; Begin if s.Top = Max then push := False else begin s.Top := s.Top + 1; s.Item[s.Top] := x; Push := True; End;
10
การนำข้อมูลออกจาก Stack ด้วยภาษาปาสคาล
Function pop(Var s:Stack; Var x:StackItem): boolean; Begin if empty(s) then pop := False else begin X := s.Item[s.Top]; s.Top := S.Top-1; Pop := True; End;
11
การตรวจสอบ Stack ว่างด้วยภาษาปาสคาล
Begin If Top = 0 Then EmptyStack := true; Else EmptyStack := false; End;
12
การตรวจสอบ Stack เต็มด้วยภาษาปาสคาล
Begin If Top = MaxStack Then FullStack := true Else FullStack := false End;
งานนำเสนอที่คล้ายกัน
© 2024 SlidePlayer.in.th Inc.
All rights reserved.