m0_51598294 2021-10-20 14:25 采纳率: 50%
浏览 19
已结题

sos!数据结构 栈和队列的典型算法实现 实验题求解

**1. 编程实现栈的如下功能:
假设以P和O(大写字母O)表示入栈和出栈操作,根据一个P和O的序列,对一个空堆栈进行操作,当进行操作结束后,堆栈为空,则该序列是合法的,否则为非法的(包括栈满操作没完成,栈空操作没完成,操作完成但堆栈为空)。当判断为P时,输入入栈元素并入栈,当判断为O时输出栈顶元素并出栈。入栈元素类型设为int型。
要求:
main()
输入:
M,代表堆栈的最大容量
序列,由P和O构成的序列
输出:
合法或非法
以上操作可以多次运行

  • 写回答

1条回答 默认 最新

  • m0_51598294 2021-10-20 14:25
    关注

    部分代码为:
    InitStack(S);//初始化堆栈;
    do
    {
    cout<<”输入堆栈的最大容量:”;
    cin>>M;
    cout<<”输入P和O序列”;
    cin>>str;//str为string类型或字符数组
    以下为处理部分,判断为P时,提示输入数值,最后,处理结束,输出”合法”或”非法”的判断,若非法,还要输出堆栈内容。
    Clear(S);//栈不空,则要清空堆栈;
    cin>>i;
    }while i<>0;

    评论

报告相同问题?

问题事件

  • 系统已结题 10月28日
  • 创建了问题 10月20日

悬赏问题

  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料