华南农业大学数据结构上机答案实验

  • 格式:docx
  • 大小:21.49 KB
  • 文档页数:57
()
{
( *)(,()*());
()
();
;
;
}
*;
;
}
( S)
{
从栈顶到栈底依次输出栈中的每个元素
*p;
p = ; 请填空
()
( ;); 请填空
{
;
}
() 请填空
{
(;, *p);
; 请填空
}
(;, *p);
(;\;);
;
}
( x)
{
;
(0)
{
(8);
(8);
}
;
}
()
{
a;
S;
x, e;
(S);
;
;
;
;
; ()
1
0
1
0
; 是函数的类型,其值是函数结果状态代码,如等
10 存储空间初始分配量
2 存储空间分配增量
{
*; 在栈构造之前和销毁之后,的值为
*; 栈顶指针
; 当前已分配的存储空间,以元素为单位
}; 顺序栈
( )
{(*)(*());
() ;
;
;
;
}
( S)
{() ;
;
}
( e)
{(){
(*)(,()*());
();
(a)
{
1: (;, );
(()) ( !\;); 判断是否合法,请填空
(
!\;, x);
;
2: (()) ( !\;); 判断是否合法,请填空
( !\;, e);
;
3: (())( !\;); 判断 是否合法,请填空
( !\;, e);
;
4: ( !\(S)); 请填空
;
5: (S); 请填空
; 定义栈元素类型
; 是函数的类型,其值是函数结果状态代码,如等
{
*; 在栈构造之前和销毁之后,的值为
*; 栈顶指针
; 当前已分配的存储空间,以元素为单位
}; 顺序栈
( )
{
构造一个空栈S,该栈预定义大小为
请补全代码
(*)(*());
() ;
;
;
;
}
( e)
{
在栈S中插入元素e为新的栈顶元素
请补全代码
*p = ( *)(());
p = ; 请填空
()( ;); 请填空
{
( : ;);
;
() 请填空
{
( ;, *p);
; 请填空
}
}
(;\;);
;
}
()
{
a;
S;
x, e;
((S)) 判断顺序表是否创建成功,请填空
{
{
(;1 \n2 \n3 \n4 \n5 \n0\ :\;);
;
100 最大队列长度(对于循环队列,最大队列长度要减1)
{
*; 初始化的动态分配存储空间
; 头指针,若队列不空,指向队列头元素
; 尾指针,若队列不空,指向队列尾元素的下一个位置
};
( )
{
构造一个空队列Q,该队列预定义大小为
请补全代码
(*)(*());
() ;
0;
;
}
( e)
{
插入元素e为Q的新的队尾元素
()
{(*)(,()*());
() ;
;
;
}
*;
;
}
( )
{
若栈不空,则删除S的栈顶元素,用e返回其值,并返回;否则返回
请补全代码
() ;
*;
;
}
( )
{
若栈不空,则用e返回S的栈顶元素,并返回;否则返回
请补全代码
() ;
*(1);
;
}
( S)
{
返回栈S的元素个数
请补全代码
;
}
( S)
{
从栈顶到栈底依次输出栈中的每个元素
10 存储空间分配增量
; 定义栈元素类型
; 是函数的类型,其值是函数结果状态代码,如等
{
*; 在栈构造之前和销毁之后,的值为
*; 栈顶指针
; 当前已分配的存储空间,以元素为单位
}; 顺序栈
( )
{
构造一个空栈S,该栈预定义大小为
( *)(*());
()
();
;
;
;
}
( e)
{
在栈S中插入元素e为新的栈顶元素
;
0: 1;
}
}
}
8585 栈的应用——进制转换
时间限制:1000 内存限制:1000K
提交次数:320 通过次数:203
题型: 编程题 语言: 无限制
利用顺序栈的基本操作算法,编写满足下列要求的数制转换程序:对于输入的任意一个非负十进制整数,打印输出与其等值的八进制数。
;
;
;
-1
1
0
20 存储空间初始分配量
(;, );
();
(S);
}
8586 括号匹配检验
时间限制:1000 内存限制:1000K
提交次数:679 通过次数:182
题型: 编程题 语言: 无限制
利用栈编写满足下列要求的括号匹配检验程序:假设表达式中允许包含两种括号:圆括号和方括号,其嵌套的顺序随意,即([]())或[([][])]等为正确的格式,[(]或([())或(()])均为不正确的格式。输入一个包含上述括号的表达式,检验括号是否配对。本题给出部分()函数,要求将()函数补充完整,并完成整个程序。
若队列不空,则从队头到队尾依次输出各个队列元素,并返回;否则返回.
i;
;
()( ;); 请填空
{
( : ;);
() 请填空
{
( [i]); 请填空
i = 1; 请填空
}
}
(;\;);
;
}
()
{
a;
e S;
x, e;
((S)) 判断顺序表是否创建成功,请填空
{
( .\;);
}
(1)
{
(;1 \n2 \n3 \n4 \n5 \n0\ :\;);
请补全代码
((1));
[];
(1);
;
}
( , )
{
若队列不空, 则删除Q的队头元素, 用e返回其值, 并返回; 否则返回
请补全代码
();
[];
(1);
;
}
( Q, )
{
若队列不空,则用e返回队头元素,并返回,否则返回
请补全代码
() ;
[];
;
}
( Q)
{
返回Q的元素个数
请补全代码
();
}
( Q)
{
();
(a)
{
1: (;, );
(()) ( !\;); 判断入队是否合法,请填空
( !\;, x);
;
2: (()) ( !\;); 判断出队是否合法,请填空
( !\;, e);
;
3: (())( !\;); 判断 是否合法,请填空
( !\;, e);
;
4: ( !\(S)); 请填空
;
5: (S); 请填空
;
0: 1;
}
}
}
8584 循环队列的基本操作
时间限制:1000 内存限制:1000K
提交次数:366 通过次数:157
题型: 编程题 语言: 无限制
创建一个空的循环队列,并实现入队、出队、返回队列的长度、返回队头元素、队列的遍历等基本算法。请将下面的程序补充完整。
;
;
1
0
; 是函数的类型,其值是函数结果状态代码,如等
华南农业大学数据结构上机答案实验
8583 顺序栈的基本操作
时间限制:1000 内存限制:1000K
提交次数:530 通过次数:212
题型: 编程题 语言: 无限制
创建一个空的顺序栈,并实现栈的入栈、出栈、返回栈的长度、返回栈顶元素、栈的遍历等基本算法。请将下
;
;
1
0
100 存储空间初始分配量
10 存储空间分配增量
() ;
;
;
}
*;
;
}
( )
{() ;
*;
;
}
()
{ 对于输入的任意一个字符串,检验括号是否配对
s;
[80],*;
((s)) 初始化栈成功
{
(;请输入表达式\;);
();
;
(*p) 没到串尾