C++ Stacks(堆栈)
栈(stack)在计算机科学中是限定仅在表尾进行插入或删除操作的线性表。栈是一种数据结构,它按照后进先出的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶,需要读数据的时候从栈顶开始弹出数据。栈是只能在某一端插入和删除的特殊线性表。用桶堆积物品,先堆进来的压在底下,随后一件一件往上堆。取走时,只能从上面一件一件取。读和取都在顶部进行,底部一般是不动的。栈就是一种类似桶堆积物品的数据结构,进行删除和插入的一端称栈顶,另一端称栈底。插入一般称为进栈,删除则称为退栈。 栈也称为后进先出表。
——————————————————————————–
操作
语法:
1 2 3 4 5 6 |
== <= >= < > != |
所有的这些操作可以被用于堆栈. 相等指堆栈有相同的元素并有着相同的顺序。
——————————————————————————–
empty
语法:
1 |
bool empty(); |
如当前堆栈为空,empty() 函数 返回 true 否则返回false.
——————————————————————————–
pop
语法:
1 |
void pop(); |
pop() 函数移除堆栈中最顶层元素。
——————————————————————————–
push
语法:
1 |
void push( const TYPE &val ); |
push() 函数将 val 值压栈,使其成为栈顶的第一个元素。如:
1 2 3 |
stack<int> s; for( int i=0; i < 10; i++ ) s.push(i); |
——————————————————————————–
size
语法:
1 |
size_type size(); |
size() 函数返当前堆栈中的元素数目。如:
1 2 3 4 |
stack<int> s; for( int i=0; i < 10; i++ ) s.push(i); cout << "This stack has a size of " << s.size() << endl; |
——————————————————————————–
top
语法:
1 |
TYPE &top(); |
top() 函数返回对栈顶元素的引用. 举例,如下代码显现和清空一个堆栈。
1 2 3 4 |
while( !s.empty() ) { cout << s.top() << " "; s.pop(); } |
《C++Stack堆栈各函数作用》上有1条评论
评论已关闭。