logo资料库

2001年上海华东师范大学编译原理考研真题.doc

第1页 / 共4页
第2页 / 共4页
第3页 / 共4页
第4页 / 共4页
资料共4页,全文预览结束
2001 年上海华东师范大学编译原理考研真题 1.[10 分] 举例说明下述概念∶ (1)文法、句型、句子和语言; _______________________________________________________________________________ _______________________________________________________________________________ _______________________________________________________________________________ ________________________________ (2)短语和句柄(柄短语); _______________________________________________________________________________ _______________________________________________________________________________ _______________________________________________________________________________ ________________________________ (3)运算符文法、运算符优先文法和素短语; _______________________________________________________________________________ _______________________________________________________________________________ _______________________________________________________________________________ ________________________________ (4)二义性文法。 _______________________________________________________________________________ _______________________________________________________________________________ _______________________________________________________________________________ ________________________________ 2.[10 分]
修改后的文法是不是 LL(1)文法?如果不是,'将修改后的文法改成 LL(1)文法。 (3) 用递归子程序法构造修改后的文法的句法分析程序 3.[10 分] (1)设 VT={a,b},试构造正则表达式 R=(a|b)bb 的确定性有限状态自动机。 (2)你所构造有限状态自动机是否已最小化?如果是,请说明理由。如果不是,请将你所构 造有 善鞣继甥豫淤参繁善译意 限状态自动机最小化。 4.[10 分]C 语言的 for 语句的格式是∶ 试设计有关中间代码,并给出符合上述定义的 for 语句的句法制导翻译定义。 5.[10 分]考察如下 PASCAL 程序∶
试用图表示程序流到达 L2 前运行栈中调用记录和区头地址表变化情况。 (共 50 分)《数据结构》 一、简答题(每小题 4 分,共 32 分) (1)画出广义表(((c)))。 (2)对于给定的线性表 B= (77,3,19,40,15,33,7,66),画出用快速排 序进行排 序时每一遍处理后的结果。 (3)三维数组 a[t1][2][3]的地址公式为&a[i][][k]=&a[0][0][0]]+__________________ ×s (s = size of (date type))。 (4)画出树的扩充标准形式存贮结构中的一个结点所具有的形式。 (5)将下图中森林转换成所对应的一棵二叉树。 (6)已 知一棵 二叉树的中序遍历序列为 ABEDGIHCF,后 序遍 历列为 AEBHIGFCD,画出 这棵树来。 (7)在穿线树 T 中,分别写出由指针 t 所指的结点无左孩子和无右孩子的判定条件。
(8)对结点序列 51,31,25,69,53,43,37,99,进行堆排序时,画出用书上 siftdown 函数所建立的初始堆。 二、写函数(共 18 分) 1 写一个对给定的循环双向链表进行改进的冒泡排序的函数。(所谓改进的冒泡排 序指的 是∶排序过程中如果执行某一遍的各次比较时没有出现结点的值的交换,就不用进行下一遍 的比较的冒泡排序。)(10 分) 2 已知一个有向图的逆邻接表,写一函数建立此图的邻接矩阵。(8 分)
分享到:
收藏