编译原理与实践第二章答案

上传人:枫** 文档编号:563772273 上传时间:2023-01-12 格式:DOC 页数:4 大小:59.01KB
返回 下载 相关 举报
编译原理与实践第二章答案_第1页
第1页 / 共4页
编译原理与实践第二章答案_第2页
第2页 / 共4页
编译原理与实践第二章答案_第3页
第3页 / 共4页
编译原理与实践第二章答案_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《编译原理与实践第二章答案》由会员分享,可在线阅读,更多相关《编译原理与实践第二章答案(4页珍藏版)》请在金锄头文库上搜索。

1、The exercises of Chapter Two2.1 Write regular expression for the following character sets, or give reasons why no regular expression can be written:a. All strings of lowercase letters that begin and end in a.Solutionaa-z*a | ab. All strings of lowercase letters that either begin or end in a ( or bot

2、h)both:a(a|b|c|z)* ac. All strings of digits that contain no leading zerosSolution1-90-9*d. All strings of digits that represent even numbers(0|1|2|9)*(0|2|4|6|8)e. All strings of digits such that all the 2s occur before all the 9sSolutiona=(0|1|3|4|5|6|7|8)r=(2|a)*(9|a)or9*2*or9*2(1|3-8)*92*g. All

3、strings of as and bs that contain an odd number of as or an odd number of bs(or both)Solutionr1=b*a(b|ab*a)*-odd number of asr2= a*b(a|ba*b)*-odd number of bsr1|r2|r1r2|r2r1orb*a(b*ab*a)*b*|a*b(a*ba*b)*a*i. All strings of as and bs that contain exactly as many as as bsSolutionNo regular expression c

4、an be written, as regular expression can not count.2.2 Write English descriptions for the languages generated by the following regular expressions:a. (a|b)*a(a|b|)SolutionAll the strings of as and bs that end with a, ab or aa.OrAll the strings of as and bs that do not end with bb.b. All words in the

5、 English alphabet of one or more letters, which start with one capital letter and dont contain any other capital letters.c. (aa|b)*(a|bb)*SolutionAll the strings of as and bs that can be divided into two sub-stings, where in the left substring, the even number of consecutive as are separated by bs w

6、hile in the right substring, the even number of consecutive b are separated by as.d. All hexadecimal numbers of length one or more, using the numbers zero through nine and capital letters A through F, and they are denoted with a lower or uppercase “x” at the end of the number string.2.12 a. Use Thom

7、psons construction to convert the regular expression (a|b)*a(a|b|) into an NFA.b. Convert the NFA of part (a) into a DFA using the subset construction.Solutiona. An NFA of the regular expression (a|b)*a(a|b|)babaa751234689171112131415161810b. The subsets constructed as follows: 7 = 7, 5,1,3,8,9 7 a

8、= 2, 10 7 b= 42,10 = 2,6,5,1,3,8,9, 10,17,11,13,15,16,18baa12345aaabbbb2,10a = 2, 10, 122,10b =4, 142,10,12 = 2,6,5,1,3,8,9,12,18,10,17,11,13,15,162,10,12a = 2,10,122,10,12b = 4, 144,14 = 4,6,5,1,3,8,9,14,184,14a = 2,104,14b = 44 = 4,6,5,1,3,8,94a =2,104b =42.15rFigure 1 r*sFigure 2 s*Assume we have

9、 r* and s* according to figure 1 and 2:rsFigure 2 r*s*Consider r*s* as followThis accepts, for example, rsrs which is not in r*s*. I. e., in this case we cannot eliminate the concatenating transition.2.16 Apply the state minimization algorithm of section to the following DFAs:cc12435aba. Solutiona.

10、Step 1: Divide the state set into two subsets:1, 2, 34, 5 Step 2: Further divide the subset 1,2,3 into two new subsets:12, 3 Step 3: Can not divide the subsets any more, finally obtains three subsets:12, 34, 5Therefore, the minimized DFA is:cc12435abSolutionb. Step 1: Divide the state set into two subsets:1, 23, 4, 5 Step 2: Further divide the subset 1,2 into two new subsets:12 Step 2: Further divide the subset 3,4,5 into two new subsets:34, 5 Step 4: Can not divide the subsets any more, finally obtains three subsets:12 34, 5Therefore, the minimized DFA is:cc1243ab

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 习题/试题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号