全球旧事资料 分类
表)只包括整数和字符型数据的广义表链表表示
表中套表情形下的广义表链表表示
设有一个表,记为La1a2a3a
,其中L表名a1a2a3a
表中元素。当ai为数值时表示元素,当ai为大写字母时,表示另一个表,但不能循环定义。例如,下列的定义是合法的(约定L是第一个表的表名):L3434K808K1558P94P4789程序要求:当全部表给出后,示出所有元素的最大元素。思路:1可以建立两种队列,一种队列是存放数值的数值队列Q1,并预定义Q1A-Q1Z条数值队列,另一种队列Q2存放字母,表示将要向该字母所对应的子表输入数值队列。2根据题目要求,事件队列Q2中应先放入字母L,表示首先输入L数值队列的数据。3从事件队列Q2中取出一个字母,并将该字母对应的数值队列的数值输入,如果输入的数据中包含字母,则把字母放入事件队列中,并记录输入的数值中的最大值。4重复3步骤,直到事件队列中为空。
f信息学奥赛之
数据结构栈与队列
表达式处理程序programbdsco
stm50type定义栈stackarray1mofcharstack1array1mofrealvarsstacks1stack1eastri
gilpyi
tegerxrealbegi
中缀表达式e转后缀表达式as为运算符栈,P为指针reade读入一个中缀表达式p0lle
gthefori1toldobegi
caseeiof09aaei若为数字,进入后缀表达式begi
pp1spe
d若为左括号,进栈begi
若为右括号,则左括号前的所有运算符出栈进入后缀表达式,)舍whilespdobegi
aasppp1e
dpp1e
dbegi
若为号,则左括号前的所有运算符出栈进入后缀表达式,号进栈whilespa
dp0dobegi
aasppp1e
dpp1speie
dbegi
若为号,则左括号前的栈顶的出栈进入后缀表达式,号进栈whilep0a
dsporspdobegi
aasppp1e
dpp1spei
f信息学奥赛之
数据结构栈与队列
e
de
dcasee
dforwhilep0do所有运算符出栈进入后缀表达式begi
aasppp1e
dwritel
a计算后缀表达a的值,S1为存放操作数的栈,P为栈指针lle
gthap0fori1toldobegi
caseaiof09begi
是操作数,将操作数转为数值类型数据后进栈pp1valaixys1pxe
dbegi
栈顶的两个操作数出栈,进行加法运算,其结果进栈xs1ppp1s1ps1pxe
dbegi
栈顶的两个操作数出栈,进行减法运算,其结果进栈xs1ppp1s1ps1pxe
dbegi
栈顶的两个操作数出栈,进行乘法运算,其结果进栈xs1ppp1s1ps1pxr
好听全球资料 返回顶部