发表日期: 2021-04-17 13:36:25 浏览次数:87
三河网站制作要多少钱【域名企业邮箱服务器注册申请办理】三河网络优化公司哪家好、三河软件开发外包价格、三河高端企业网站页面制作设计专业公司、三河微信公众号小程序购物支付搭建制作公司
三河古镇,古名鹊渚、鹊尾(渚)、鹊岸,是中国历史文化名镇,国家AAAAA级旅游景区,位于安徽省合肥市肥西县南端,地处肥西、庐江、舒城交界处,古镇总面积2.9平方公里。 [1-2]
三河古镇原是巢湖中的高洲,因泥沙淤积,渐成陆地。南北朝后期称三汊河,明、清置三河镇。 [2]
三河古镇有丰乐河、杭埠河、小南河在境内汇合,经新河向东流约15公里入巢湖。镇内有古城墙、古炮台、太平军指挥部旧址、英王府、一人巷、万年台、李府粮仓、鹤庐、刘同兴隆庄等历史遗迹,是庐剧的发源地,古镇有米饺、牛皮糖、酥糖、麦芽糖、茶干、米酒等特产。 [3]
为表达对全体医护人员的敬意和感谢,自疫情结束恢复运营之日起至2020年12月31日,三河古镇景区所有收费景区将面向全国医护工作者实行免费游览政策。
2. 类型NODE
和TREE
的定义。节点是由标号字段(字符),以及指向最左子节点和右兄弟节点的指针组成的。标号‘B
’表示标号为B 的节点,‘(
‘和’)
’分别表示标号为左括号和右括号的节点,而‘e
’则表示标号为ε 的节点。与5.3节中最左子节点右兄弟节点结构不同的是,这里为指向节点的指针选择的类型是TREE
而非pNODE
,因为这里的这些指针多用来作为树的表示。
3. 下面要描述的3个辅助函数和函数B 的原型声明。
4. 两个全局变量。第一个是parseTree
,存放着由对B 的第一次调用返回的分析树。第二个是nextTerminal
,它是输入游标,指向输入终结符串中的当前位置。请注意,nextTerminal
具有全局性是很重要的,这样当B的一次调用返回时,输入游标所在的位置对执行这次调用的B的副本而言就是已知的。
5. main
函数。在这一简单的演示中,main
将nextTerminal
置为指向特定测试串()()
开头的位置,而且调用B 的解雇被放置在parseTree
中。
6. 3个辅助函数可以创建树节点,而且,如果需要的话,可以组合子树以形成更大的树。它们分别是
(a) makeNode 0(x)函数创建的节点没有子节点,也就是说,它创建的是叶子节点,而且用符号x 作为该叶子节点的标号。返回的是由这一个节点组成的树。
(b) makeNode 1(x,t )函数创建的节点具有一个子节点。新节点的标号为x,而且其子节点是树t 的根节点。返回的是根节点为所创建节点的树。请注意,makeNode1
要利用makeNode0
创建根节点,然后让树t 的根节点成为所创建根节点的最左子节点。我们假设所有的最左子节点和右兄弟节点指针一开始都是NULL
,而且它们就是,因为它们都是由makeNode0
创建的,该函数显然将它们置为了NULL
。因此,makeNode1
并不一定要把NULL
存储到树t 根节点的rightSibling
字段中,不过这样做是明智的安全之举。
(c) 函数makeNode 4(x,t1,t2,t3,t4)创建的节点具有4个子节点。该节点的标号是x,而其子节点按照从左到右的次序分别是树t1、t2、t3和t4的根节点,返回的是用所创建节点作为根节点的树。请注意,makeNode4
要利用makeNode1
创建一个新的根节点,并将t1附加到该节点上,然后用右兄弟节点指针把其余的树串联起来。
#define FAILED NULLtypedef struct NODE *TREE;struct NODE { char label; TREE leftmostChild, rightSibling;};TREE makeNode0(char x);TREE makeNode1(char x, TREE t);TREE makeNode4(char x, TREE t1, TREE t2, TREE t3, TREE t4);TREE B();TREE parseTree; /* 存放分析的结果 */char *nextTerminal; /* 输入字符串中的当前位置 */void main(){ nextTerminal = "()()"; /* 在实际应用中,终结符串是从输入读取的 */ parseTree = B();}TREE makeNode0(char x){ TREE root; root = (TREE) malloc(sizeof(struct NODE)); root->label = x; root->leftmostChild = NULL; root->rightSibling = NULL; return root;}TREE makeNode1(char x, TREE t){ TREE root; root = makeNode0(x); root->leftmostChild = t; return root;}TREE makeNode4(char x, TREE t1, TREE t2, TREE t3, TREE t4){ TREE root; root = makeNode1(x, t1); t1->rightSibling = t2; t2->rightSibling = t3; t3->rightSibling = t4; return root;}复制代码
图11-27(a) 递归下降分析器的辅助函数
TREE B()
{
(1) TREE firstB, secondB;
(2) if(*nextTerminal == '(') /* 遵循产生式2 */ {
(3) nextTerminal++;
(4) firstB = B();
(5) if(firstB != FAILED && *nextTerminal == ')') {
(6) nextTerminal++;
(7) secondB = B();
(8) if(secondB == FAILED)
(9) return FAILED;
else(10) return makeNode4('B',
makeNode0('('),
firstB,
makeNode0(')'),
secondB);
}
else /* 对B的第一次调用失败了 */(11) return FAILED;
}
else /* 遵循产生式 1 */(12) return makeNode1('B', makeNode0('e'));
}
三河网站制作要多少钱【域名企业邮箱服务器注册申请办理】三河网络优化公司哪家好、三河软件开发外包价格、三河高端企业网站页面制作设计专业公司、三河微信公众号小程序购物支付搭建制作公司
备案号: 苏ICP备11067224号
CopyRight © 2011 书生商友信息科技 All Right Reserved
24小时服务热线:400-111-6878 E-MAIL:1120768800@qq.com QQ:1120768800
网址: https://www.768800.com 网站建设:上往建站
关键词: 网站建设| 域名邮箱| 服务器空间| 网站推广| 上往建站| 网站制作| 网站设计| 域名注册| 网络营销| 网站维护|
企业邮箱| 虚拟主机| 网络建站| 网站服务| 网页设计| 网店美工设计| 网站定制| 企业建站| 网站设计制作| 网页制作公司|
400电话办理| 书生商友软件| 葬花网| 调温纤维| 海洋馆运营维护| 北京保安公司| 殡仪馆服务| 殡葬服务| 昌平殡葬| 朝阳殡葬|
欢迎您免费咨询,请填写以下信息,我们收到后会尽快与您联系
服务热线:400-111-6878