堆栈是遵循特定操作顺序的线性数据结构。订单可以是FILO(先进先出)或LIFO(先进先出)
Begin Declare stack vector. Take the input as per choice. Call the functions within switch operation: s.size() = Returns the size of stack. s.push() = It is used to insert elements to the stack. s.pop() = To pop out the value from the stack. s.top() = Returns a reference to the top most element of stack. End.
#include <iostream> #include <stack> #include <string> #include <cstdlib> using namespace std; int main() { stack<int> s; int c, i; while (1) { cout<<"1.Size of the Stack"<<endl; cout<<"2.Insert Element into the Stack"<<endl; cout<<"3.Delete Element from the Stack"<<endl; cout<<"4.Top Element of the Stack"<<endl; cout<<"5.Exit"<<endl; cout<<"Enter your Choice: "; cin>>c; switch(c) { case 1: cout<<"Size of the stack: "; cout<<s.size()<<endl; break; case 2: cout<<"Enter value to be inserted: "; cin>>i; s.push(i); break; case 3: i = s.top(); if (!s.empty()) { s.pop(); cout<<i<<" Deleted"<<endl; }else { cout<<"Stack is Empty"<<endl; } break; case 4: cout<<"Top Element of the Stack: "; cout<<s.top()<<endl; break; case 5: exit(1); break; default: cout<<"Wrong Choice"<<endl; } } return 0; }
输出结果
1.Size of the Stack 2.Insert Element into the Stack 3.Delete Element from the Stack 4.Top Element of the Stack 5.Exit Enter your Choice: 1 Size of the stack: 0 1.Size of the Stack 2.Insert Element into the Stack 3.Delete Element from the Stack 4.Top Element of the Stack 5.Exit Enter your Choice: 2 Enter value to be inserted: 1 1.Size of the Stack 2.Insert Element into the Stack 3.Delete Element from the Stack 4.Top Element of the Stack 5.Exit Enter your Choice: 2 Enter value to be inserted: 7 1.Size of the Stack 2.Insert Element into the Stack 3.Delete Element from the Stack 4.Top Element of the Stack 5.Exit Enter your Choice: 2 Enter value to be inserted: 6 1.Size of the Stack 2.Insert Element into the Stack 3.Delete Element from the Stack 4.Top Element of the Stack 5.Exit Enter your Choice: 2 Enter value to be inserted: 10 1.Size of the Stack 2.Insert Element into the Stack 3.Delete Element from the Stack 4.Top Element of the Stack 5.Exit Enter your Choice: 2 Enter value to be inserted: 4 1.Size of the Stack 2.Insert Element into the Stack 3.Delete Element from the Stack 4.Top Element of the Stack 5.Exit Enter your Choice: 1 Size of the stack: 5 1.Size of the Stack 2.Insert Element into the Stack 3.Delete Element from the Stack 4.Top Element of the Stack 5.Exit Enter your Choice: 3 4 Deleted 1.Size of the Stack 2.Insert Element into the Stack 3.Delete Element from the Stack 4.Top Element of the Stack 5.Exit Enter your Choice: 4 Top Element of the Stack: 10 1.Size of the Stack 2.Insert Element into the Stack 3.Delete Element from the Stack 4.Top Element of the Stack 5.Exit Enter your Choice: 5 Exit code: 1
本文向大家介绍C ++程序在STL中实现Prev_Permutataion,包括了C ++程序在STL中实现Prev_Permutataion的使用技巧和注意事项,需要的朋友参考一下 STL中的Prev_permutation用于将范围[first,last]中的元素重新排列到先前的字典上较小的排列。排列是N的每一个!元素可以采取的可能安排。这是一个在STL中实现Prev_permutation的
本文向大家介绍C ++程序在STL中实现Next_Permutation,包括了C ++程序在STL中实现Next_Permutation的使用技巧和注意事项,需要的朋友参考一下 STL中的next_permutation用于将[first,last]范围内的元素重新排列到下一个字典上更大的排列。排列是N的每一个!元素可以采取的可能安排。这是C ++程序,用于在STL中实现Next_permuta
本文向大家介绍在STL中实现Vector的C ++程序,包括了在STL中实现Vector的C ++程序的使用技巧和注意事项,需要的朋友参考一下 向量具有在插入或删除元素时自动像动态数组一样自动调整大小的能力,容器可以自动处理其存储。矢量元素放置在连续的存储中,以便可以使用迭代器对其进行访问和遍历。可以在向量的开头,中间或结尾插入或删除数据。 功能和说明: 范例程式码 输出结果
本文向大家介绍在STL中实现集的C ++程序,包括了在STL中实现集的C ++程序的使用技巧和注意事项,需要的朋友参考一下 Set是抽象数据类型,其中每个元素都必须是唯一的,因为元素的值可以标识它。一旦将元素的值添加到集合中,就无法对其进行修改,但是可以删除并添加该元素的修改后的值。 功能和说明: 范例程式码 输出结果
本文向大家介绍C ++程序在STL中实现队列,包括了C ++程序在STL中实现队列的使用技巧和注意事项,需要的朋友参考一下 队列是遵循先进先出(FIFO)顺序的线性结构,在该顺序中,对队列的元素执行操作。 算法 范例程式码 输出结果
本文向大家介绍在STL中实现Priority_queue的C ++程序,包括了在STL中实现Priority_queue的C ++程序的使用技巧和注意事项,需要的朋友参考一下 优先级队列是一种容器适配器,其中队列的第一个元素是队列中所有元素中最大的。元素在优先级队列中的顺序也不减。在优先级队列中,高优先级的元素在低优先级的元素之前得到服务。 功能和说明: 范例程式码 输出结果