스택 [C++ 소스]
"본문 내용"은 언제나 휴일 본 사이트에 있습니다.
//스택
#include <iostream>
using namespace std;
class Stack
{
int *buffer;
const int size;
int top;
public:
Stack(int size):size(size)
{
top = -1;
buffer = new int[size];
}
~Stack()
{
delete[] buffer;
}
bool Push(int data)
{
if(IsFull())
{
return false;
}
top++;
buffer[top] = data;
return true;
}
int Pop()
{
if(IsEmpty())
{
return 0;
}
int re = buffer[top];
top--;
return re;
}
bool IsFull()
{
return (top+1) == size;
}
bool IsEmpty()
{
return top == -1;
}
};
int main()
{
Stack st(10);//크기가 10인 스택
st.Push(4); //4
st.Push(7); //4 7
st.Push(8); //4 7 8
st.Push(2); //4 7 8 2
while(st.IsEmpty() == false)
{
cout<<st.Pop()<<" ";
}
cout<<endl;
return 0;
}
프로그래밍 언어 및 기술 학습, 무료 동영상 강의 언제나 휴일
'C++ > 디딤돌 자료구조와 알고리즘 with C++' 카테고리의 다른 글
라운드 로빈 스케쥴러 시뮬레이션 [C++] (0) | 2016.06.11 |
---|---|
원형 큐 [C++소스] (0) | 2016.06.11 |
STL list 사용, 정렬 상태를 유지 (특정 키 순으로 보관) [C++ 소스] (0) | 2016.06.11 |
STL list 사용, 순차 보관 [C++ 소스] (0) | 2016.06.11 |
이중 연결리스트 [C++ 소스] (0) | 2016.06.11 |