[填空题]

已知Q是一个非空队列,S是一个空栈。编写算法,仅用队列和栈的ADT函数和少量工作变量,将队列Q的所有元素逆置。栈的ADT函数有:voidmakeEmpty(SqStacks);置空栈voidpush(SqStacks,ElemTypee);元素e入栈ElemTypepop(SqStacks);出栈,返回栈顶元素intisEmpty(SqStacks);判断栈空队列的ADT函数有:voidenQueue(Queueq,ElemTypee);元素e入队ElemTypedeQueue(Queueq);出队,返回队头元素intisEmpty(Queueq);判断队空

参考答案与解析:

相关试题

设栈s和队列q的初始状态为空,元素a、b、c、d、e依次进入栈s,当一个元素从栈

[单选题]设栈s和队列q的初始状态为空,元素a、b、c、d、e依次进入栈s,当一个元素从栈中出来后立即进入队列q。若从队列的输出端依次得到元素c、d、b、a、e,则元素的出栈顺序是(26),栈s的容量至少为(27)。A.a、b、c、d、eB.-e、d、c、b、aC.c、d、b、a、eD.e、a、b、d、c

  • 查看答案
  • 设栈s和队列Q的初始状态为空,元素a、b、c、d、e和f依次通过栈s,一个元素出

    [单选题]设栈s和队列Q的初始状态为空,元素a、b、c、d、e和f依次通过栈s,一个元素出栈后即进入队列Q,若6个元素出队的顺序是b、d、c、f、e、a,则栈S的容量至少应该是( )。A.)6B.)4C.)3D.)2

  • 查看答案
  • 设栈S和队列Q的初始状态为空,元素a、b、C、d、e和f依次通过栈s,一个元素出

    [单选题]设栈S和队列Q的初始状态为空,元素a、b、C、d、e和f依次通过栈s,一个元素出栈后即进入队列Q,若6个元素出队的顺序是b、d、C、f、e、a,则栈S的容量至少应该是( )。A.)6B.)4C.)3D.)2

  • 查看答案
  • 设栈s和队列q的初始状态为空,元素a、b、c、d、e和f依次通过栈s,一个元素出

    [单选题]设栈s和队列q的初始状态为空,元素a、b、c、d、e和f依次通过栈s,一个元素出栈后立刻进入队列q。若这6个元素出队列的顺序是b、d、c、f、e和a,则栈s的容量至少应该是(14)。A.3B.4C.5D.6

  • 查看答案
  • 设栈S和队列Q的初始状态为空。元素a、b、c、d、e、f依次通过栈S,并且一个元

    [单选题]设栈S和队列Q的初始状态为空。元素a、b、c、d、e、f依次通过栈S,并且一个元素出栈后即进入队列Q,若出队的顺序为b、d、c、f、e、a,则栈S的容量至少应该为______。A.3B.4C.5D.6

  • 查看答案
  • 设栈S和队列Q的初始状态为空,元素按照a、b、c、d、e的次序进入栈S,当一个元

    [单选题]设栈S和队列Q的初始状态为空,元素按照a、b、c、d、e的次序进入栈S,当一个元素从栈中出来后立即进入队列Q。若队列的输出元素序列是c、d、b、a、e,则元素的出栈J顷序是(58),栈S的容量至少为(59)。A.a、b、c、d、eB.e、d、c、b、aC.c、d、b、a、e.D.e、a、b、d、c

  • 查看答案
  • 设栈S和队列O的初始状态为空,元素a、b、c、d、e和f依次通过栈S,一个元素出

    [单选题]设栈S和队列O的初始状态为空,元素a、b、c、d、e和f依次通过栈S,一个元素出栈后即进入队列Q,若6个元素出队的顺序是b、d、c、f、e、a,则栈S的容量至少应该是( )。A.6B.4C.3D.2

  • 查看答案
  • 设有栈S和队列Q,其初始状态为空,元素a、a、 a、a、a、a依次入栈,出栈的元

    [单选题]设有栈S和队列Q,其初始状态为空,元素a、a、 a、a、a、a依次入栈,出栈的元素进入队列Q,若6个元素出队列的顺序是a、a、a、a、a、,则栈的容量至少是______。A.6B.4C.3D.2

  • 查看答案
  • 一个栈(Stack)对象有三种状态:S1——栈空;S2——栈非空也非满;S3——

    [试题]一个栈(Stack)对象有三种状态:S1——栈空;S2——栈非空也非满;S3——栈满。则各个状态的条件如下:S1:(t0)创建栈对象时初始化,这是系统做的(t1)在S2状态下执行置空运算setEmpty()(t2)在S3状态下执行置空运算setEmpty()(t3)在S2状态下执行出栈运算Pop()S2:(t4)在S1状态下执行进栈运算Push()(t5)在S3状态下执行出栈运算Pop()S3:(t6)在S2状态下执行进栈运算Push()为简化问题,假设栈Stack的容量为2,栈元素的数据类型为整

  • 查看答案
  • 设栈 s 和队列 q 的初始状态为空,元素 a、b、c、d、e 依次进入栈

    [单选题] 设栈 s 和队列 q 的初始状态为空,元素 a、b、c、d、e 依次进入栈 s,当一个元素从栈中出来后立即进入队列 q。若从队列的输出端依次得到元素 c、d、b、a、e,则元素的出栈顺序是 (26) ,栈 s 的容量至少为 (27) 。(26)A. a、b、c、d、eB. e、d、c、b、aC. c、d、b、a、eD. e、a、b、d、c(27)A. 2B. 3C. 4D. 5

  • 查看答案
  • 已知Q是一个非空队列,S是一个空栈。编写算法,仅用队列和栈的ADT函数和少量工作