中国大学MOOC: 用高级语言编写程序时,可以用一个数组实现两个栈。给定长度为N的数组A如图所示,实现两个栈S1和S2,对任何一个栈只有当数组A的空间用尽时才不能进行进栈操作。这两个栈分配空间的最佳方案是 ()【图片】
S1的栈底元素存储在A[0]处,S2的栈底元素存储在A[N-1]处,每个栈的进栈操作都是向着数组中间进行;
举一反三
- 设数组 S[n]作为两个栈 S1 和 S2 的存储空间,对任何一个栈只有当 S[n]全满时才不能进行进栈操作。 为这两个栈分配空间的最佳方案是(
- 中国大学MOOC: 用高级语言编写程序时,可以用数组来实现栈。给定长度为N的数组A如图所示,下面说法正确的是 ( )【图片】
- 若数组s[0..n-1]为两个栈s1和s2的共用存储空间,仅当s[0..n-1]全满时,各栈才不能进行栈操作,则为这两个栈分配空间的最佳方案是:s1和s2的栈顶指针的初值分别为()。
- 【多选题】用高级语言编写程序时,可以用数组来实现栈。下面说法正确的是 () A. 使用数组实现栈时,只需要在数组中存储节点数据即可,不需要存储其他数据 B. 使用数组实现栈时,可以将数组的第 1 位用来存储栈顶在数组中的下标 C. 使用数组实现栈时,可以用一个包含一个数组和 1 个整型变量的结构来定义 D. 使用数组实现栈时,栈底必定一直在数组下标为 0 处
- 【多选题】用高级语言编写程序时,可以用数组来实现栈。给定长度为N的数组A如图所示,下面说法正确的是 ()【图片】 A. 使用数组实现栈时,只需要在数组A中存储栈的数据即可,不需要存储其他数据; B. 使用数组实现栈时,可以用A[0]存储栈顶位置,A[1…N-1]为栈的存储空间,栈底在数组A中位置固定; C. 使用数组实现栈时,可以用一个包含数组A和1个整型变量的结构来定义,A[0…N-1]为栈的存储空间,栈底在数组A中位置固定,整型变量定义为栈顶位置; D. 使用数组实现栈时,栈底元素必定一直在数组A[0]处;
内容
- 0
中国大学MOOC: 设两个栈S1和S2共享同一空间数组a[0,1…MAX],为了最大限度利用数组空间,两个栈采用相向增长的方式,top[1]是低端栈s1的栈顶指针,top[2]是高端栈s2的栈顶指针,则栈满的判断条件是( )
- 1
在一个用一维数组a[n]表示的顺序栈中,该栈所含元素的个数最少为()个,最多为()个
- 2
当两个栈共享一存储区时,栈利用一维数组 stack(1,n)表示,两栈顶指针为 top[1]与 top[2],则当栈 1 空时,top[1]为(__),栈 2 空时 ,top[2]为(__),栈满时为(__);
- 3
设两个栈S1和S2共享同一空间数组a[0,1…MAX],为了最大限度利用数组空间,两个栈采用相向增长的方式,top[1]是低端栈s1的栈顶指针,top[2]是高端栈s2的栈顶指针,则栈满的判断条件是( ) A: top[1]==0 B: top[1]==MAX C: top[2]==MAX D: top[1]+1==top[2]
- 4
假设用一个长度为50的数组(数组元素的下标从0~49)作为栈的存储空间,栈底指针bottom指向栈底元素,栈顶指针top指向栈顶元素,如果bottom=49,top=30(数组下标),则栈中具有______个元素。