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

กองใน C ++ STL (3.5)


ใน C++ STL สแต็กถูกใช้เป็นคอนเทนเนอร์ซึ่งถูกนำไปใช้เป็นโครงสร้าง LIFO LIFO หมายถึง เข้าก่อนออกก่อน กองสามารถมองเป็นกองหนังสือ โดยที่หนังสือถูกจัดเรียงไว้เหนืออีกเล่มหนึ่ง และเล่มสุดท้ายที่ใส่เข้าไปจะเป็นเล่มแรกที่จะถูกถอดออก จึงเรียกว่าเป็นโครงสร้าง LIFO

กองใน C ++ STL (3.5)

การดำเนินการที่เกี่ยวข้องกับสแต็กคือ -

  • บน() - ฟังก์ชันนี้จะคืนค่าการอ้างอิงไปยังองค์ประกอบบนสุดของสแต็ก

    ไวยากรณ์ - name_of_stack.top()

    พารามิเตอร์ - ไม่มีพารามิเตอร์

    คืนค่า - อ้างอิงถึงองค์ประกอบบนสุดของคอนเทนเนอร์สแต็ก

  • ดัน() - ฟังก์ชันนี้ใช้เพื่อแทรกองค์ประกอบลงในคอนเทนเนอร์สแต็ก

    ไวยากรณ์ - name_of_stack.push(องค์ประกอบ)

    พารามิเตอร์ - ฟังก์ชันนี้ใช้องค์ประกอบที่จะแทรก

    คืนค่า - ไม่คืนอะไรเลย

  • ป๊อป() - ฟังก์ชันนี้ใช้เพื่อลบองค์ประกอบออกจากคอนเทนเนอร์สแต็ก

    ไวยากรณ์ - name_of_stack.pop()

    พารามิเตอร์ - ไม่มีพารามิเตอร์

    คืนค่า - ลบองค์ประกอบบนสุดของสแต็กแล้วส่งคืน

  • ขนาด() - ฟังก์ชันนี้ใช้เพื่อคำนวณจำนวนองค์ประกอบทั้งหมดที่มีอยู่ในสแต็ก

    ไวยากรณ์ - name_of_stack.size()

    พารามิเตอร์ - ไม่มีพารามิเตอร์

    คืนค่า - ส่งกลับจำนวนองค์ประกอบในกอง

  • ว่างเปล่า() - ฟังก์ชั่นนี้ใช้ตรวจสอบว่า stack ว่างหรือไม่

    ไวยากรณ์ - name_of_stack.empty()

    พารามิเตอร์ - ไม่มีพารามิเตอร์

    คืนค่า - ส่งคืนค่าบูลีนที่เป็นจริงหรือเท็จ เป็นจริงเมื่อสแต็กว่างเปล่าและเป็นเท็จเมื่อสแต็กไม่ว่างเปล่า

ตัวอย่าง

#include <bits/stdc++.h>
using namespace std;
int main(){
   //create a stack container
   stack <int> newStack;
   //insert elements to a stack
   newStack.push(10);
   newStack.push(20);
   newStack.push(30);
   newStack.push(40);
   //check whether the values are pushed in stack or not
   //using empty()
   if(!newStack.empty()){
      //calculate size of a stack
      cout<<"Stack size is: "<< newStack.size();
   }
   else{
      cout<<"Stack is empty";
   }
   cout<<"\nElements in the stack are:";
   while(!newStack.empty()){
      cout<<" "<< newStack.top();
      newStack.pop();
   }
   return 0;
}

ผลลัพธ์

Stack size is: 4
Elements in the stack are: 40 30 20 10