网站建设的常用软件有哪些,竞价网络推广培训,中国建设银行的网站用户名是什么意思,专业网站优化目录#x1f60b;
任务描述
相关知识
测试说明
我的通关代码:
测试结果#xff1a; 任务描述 本关任务#xff1a;编写一个程序实现链栈的基本运算。 相关知识 为了完成本关任务#xff0c;你需要掌握#xff1a; 初始化栈、销毁栈、判断栈是否为空、进栈、出栈、取栈…目录
任务描述
相关知识
测试说明
我的通关代码:
测试结果 任务描述 本关任务编写一个程序实现链栈的基本运算。 相关知识 为了完成本关任务你需要掌握 初始化栈、销毁栈、判断栈是否为空、进栈、出栈、取栈顶元素等。 测试说明 平台会对你编写的代码进行测试 输入进队列字符串以字符串形式输入 输入 abcde 输出 (1)初始化栈s (2)栈为空 (3)依次进栈元素:a b c d e (4)栈为非空 (5)出栈序列:e d c b a (6)栈为空 (7)释放栈 输入 xyz 输出 (1)初始化栈s (2)栈为空 (3)依次进栈元素:x y z (4)栈为非空 (5)出栈序列:z y x (6)栈为空 (7)释放栈 开始你的任务吧祝你成功 我的通关代码:
// 请在Begin-End之间添加你的代码
//实现链栈的如下基本运算假设链栈的元素类型为char//
//(1)初始化栈s//
//(2)判断栈s是否非空输出判断结果//
//(3)依次进栈元素注进栈元素由用户输入//
//(4)判断栈s是否非空输出判断结果//
//(5)输出出栈序列//
//(6)判断栈s是否非空输出判断结果//
//(7)释放栈//
/********** Begin *********/
#include iostream
using namespace std;struct Node{char data;Node *next;Node(char x): data(x),next(NULL){}
};class Stack{private:Node *top;public:Stack() : top(NULL){}~Stack(){while(top ! NULL){Node *temp top;top top - next;delete temp;}}bool isEmpty(){return top NULL;}void push(char x){Node *newNode new Node(x);newNode-next top;top newNode;}char pop(){if(isEmpty()){throw Stack is empty;}char x top-data;Node *temp top;top top-next;delete temp;return x;}char peek(){if(isEmpty()){throw Stack is empty;}return top-data;}
};int main(){string input;cininput;Stack s;cout (1)初始化栈sendl;if(s.isEmpty()){cout(2)栈为空endl;}cout (3)依次进栈元素:;for(char c : input){s.push(c);cout c ;}cout endl;if(!s.isEmpty()){cout (4)栈为非空endl;}cout (5)出栈序列:;while (!s.isEmpty()){cout s.pop() ;}cout endl;if(s.isEmpty()){cout(6)栈为空endl;}cout (7)释放栈endl;return 0;
}/********** End **********/ 测试结果