Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม

กอง ADT ในโครงสร้างข้อมูล


ประเภทข้อมูลนามธรรมเป็นชนิดข้อมูลพิเศษ ซึ่งพฤติกรรมถูกกำหนดโดยชุดของค่าและชุดของการดำเนินการ มีการใช้คำหลัก "บทคัดย่อ" เนื่องจากเราสามารถใช้ประเภทข้อมูลเหล่านี้ เราสามารถดำเนินการต่างๆ ได้ แต่การดำเนินการเหล่านั้นทำงานอย่างไรซึ่งถูกซ่อนจากผู้ใช้โดยสิ้นเชิง ADT ประกอบด้วยประเภทข้อมูลดั้งเดิม แต่ตรรกะการทำงานถูกซ่อนไว้

ที่นี่เราจะเห็นกอง ADT นี่เป็นการดำเนินการหรือฟังก์ชันบางอย่างของ Stack ADT

  • isFull() ใช้ตรวจสอบว่า stack เต็มหรือไม่
  • isEmpry() ใช้ตรวจสอบว่า stack ว่างหรือไม่
  • push(x) ใช้สำหรับผลัก x เข้าไปใน stack
  • pop() ใช้เพื่อลบหนึ่งองค์ประกอบออกจากด้านบนของสแต็ก
  • peek() ใช้เพื่อรับองค์ประกอบสูงสุดของสแต็ก
  • size() ฟังก์ชันนี้ใช้เพื่อรับจำนวนองค์ประกอบที่มีอยู่ในสแต็ก

ตัวอย่าง

#include<iostream>
#include<stack>
using namespace std;
main(){
   stack<int> stk;
   if(stk.empty()){
      cout << "Stack is empty" << endl;
   } else {
      cout << "Stack is not empty" << endl;
   }
   //insert elements into stack
   stk.push(10);
   stk.push(20);
   stk.push(30);
   stk.push(40);
   stk.push(50);
   cout << "Size of the stack: " << stk.size() << endl;
   //pop and dispay elements
   while(!stk.empty()){
      int item = stk.top(); // same as peek operation
      stk.pop();
      cout << item << " ";
   }
}

ผลลัพธ์

Stack is empty
Size of the stack: 5
50 40 30 20 10