Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++ STL의 스택 empty() 및 스택 크기()

<시간/>

이 기사에서는 C++ STL에서 stack::empty() 및 stack::size() 함수의 작동, 구문 및 예제에 대해 논의할 것입니다.

C++ STL의 스택이란 무엇입니까?

스택은 LIFO(Last In First Out)에 데이터를 저장하는 데이터 구조로, 마지막에 삽입된 요소의 맨 위에서부터 삽입 및 삭제를 수행합니다. 접시 더미와 마찬가지로 새 접시를 더미에 밀어넣고 싶으면 맨 위에 삽입하고 더미에서 접시를 제거하려면 맨 위에서도 제거합니다.

스택::empty()란 무엇입니까?

stack::empty() 함수는 헤더 파일에 정의된 C++ STL의 내장 함수입니다. empty()는 연결된 컨테이너가 비어 있는지 여부를 확인하고 그에 따라 true 또는 false를 반환하는 데 사용됩니다.

컨테이너가 비어 있어야 함을 확인하는 함수는 컨테이너의 크기가 0이어야 함을 의미합니다.

구문

stack_name.empty();

매개변수

함수는 매개변수를 허용하지 않습니다.

반환 값

이 함수는 컨테이너가 비어 있으면 true를 반환하고 그렇지 않으면 false를 반환합니다.

입력

std::stack<int> stack1;
stack1.emplace(1);
stack1.emplace(2);
stack1.emplace(3);
stack1.empty();

출력

false

입력

std::stack<int> stack2;
stack2.empty();

출력

true

예시

#include <iostream>
#include <stack>
using namespace std;
int main(){
   stack<int> stck;
   int Product = 1;
   stck.push(1);
   stck.push(2);
   stck.push(3);
   stck.push(4);
   stck.push(5);
   stck.push(6);
   while (!stck.empty()){
      Product = Product * stck.top();
      stck.pop();
   }
   cout<<"\nProduct of elements in stack are: "<<Product;
   return 0;
}

출력

위 코드를 실행하면 다음 출력이 생성됩니다. -

Product of elements in stack are: 720

스택::size()란 무엇입니까?

stack::size() 함수는 헤더 파일에 정의된 C++ STL의 내장 함수입니다. size()는 연결된 컨테이너의 크기를 확인하고 컨테이너의 요소 수인 정수 값으로 결과를 반환하는 데 사용됩니다.

컨테이너가 비어 있으면 size()는 0을 반환합니다.

구문

stack_name.size();

매개변수

함수는 매개변수를 허용하지 않습니다.

반환 값

이 함수는 컨테이너의 크기를 반환합니다.

입력

std::stack<int> stack1;
stack1.emplace(1);
stack1.emplace(2);
stack1.emplace(3);
stack1.size();

출력

3

입력

std::stack<int> stack2;
stack2.size();

출력

0

예시

#include <iostream>
#include <stack>
using namespace std;
int main(){
   stack<int> stck;
   int Product = 1;
   stck.push(1);
   stck.push(2);
   stck.push(3);
   stck.push(4);
   stck.push(5);
   stck.push(6);
   cout<<"size of stack is: "<<stck.size();
   while (stck.size()>0){
      Product = Product * stck.top();
      stck.pop();
   }
   cout<<"\nProduct of elements in stack are: "<<Product;
   return 0;
}

출력

위 코드를 실행하면 다음 출력이 생성됩니다. -

size of stack is: 6
Product of elements in stack are: 720