งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

สแตค (stack) โครงสร้างข้อมูลแบบ Stack - การสร้าง Stack  - การเข้าและออกจาก Stack  - การตรวจสอบ Stack.

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "สแตค (stack) โครงสร้างข้อมูลแบบ Stack - การสร้าง Stack  - การเข้าและออกจาก Stack  - การตรวจสอบ Stack."— ใบสำเนางานนำเสนอ:

1 สแตค (stack) โครงสร้างข้อมูลแบบ Stack - การสร้าง Stack  - การเข้าและออกจาก Stack  - การตรวจสอบ Stack

2 Stack Structure ประกอบด้วยสมาชิกที่เรียงต่อ กันเป็นแถว โดยการนำสมาชิก เข้าและออกจากสแตกจะกระทำที่ ด้านปลายหรือด้านบน Top of the stack

3 การดำเนินการของ Stack - การนำสมาชิกเข้าสู่สแตก ข้อมูลจะ อยู่ด้านบนเสมอ - การนำสมาชิกออกจากสแตก จะต้องนำข้อมูลด้านบนออกก่อน หรือ เรียกว่าข้อมูลที่เข้าสแตกก่อนจะออก ทีหลังและข้อมูลที่เข้าสแตกทีหลังจะ ออกก่อน LIFO Last-In, First-out LIFO Last-In, First-out

4 ตัวอย่างการดำเนินการ ของ Stack A BABA CBACBA BABAA BCCB 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) Item = 4 Item = 6

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; 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; End;

11 การตรวจสอบ Stack ว่างด้วย ภาษาปาสคาล Begin If Top = 0 Then  EmptyStack := true;  Else  EmptyStack := false; End;

12 Begin If Top = MaxStack Then  FullStack := true  Else  FullStack := false End; การตรวจสอบ Stack เต็มด้วย ภาษาปาสคาล


ดาวน์โหลด ppt สแตค (stack) โครงสร้างข้อมูลแบบ Stack - การสร้าง Stack  - การเข้าและออกจาก Stack  - การตรวจสอบ Stack.

งานนำเสนอที่คล้ายกัน


Ads by Google