freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

編譯原理課程設計--nfa轉(zhuǎn)化為dfa的轉(zhuǎn)換算法及實現(xiàn)-其他專業(yè)(已改無錯字)

2023-03-03 02:55:21 本頁面
  

【正文】 我深刻的認識到實踐才是最重要的。書本只能教給我們基礎知識 ,要怎樣運用 ,將那些知識真正吸收 ,轉(zhuǎn)化為自己的智慧 ,只有通過實 踐才能達到。編譯原理是一門實用性很強,對我們的專業(yè)很有幫助的科目 ,我將會繼續(xù)努力 ,不斷增加自己的知識面 ,把編譯原理學習的更好。 同時我也發(fā)現(xiàn)自己對于有限自動機的知識掌握得還不是很多,在這次課程實踐中,我懂得了怎樣去和別人交流,更好地掌握和熟練了所學的知識。 考 文 獻 ( 1)楊路明、郭浩志 .C 語言程序設計教程 .2021 年 12 月第 1版 . 北京 :北京郵電大學出版社 .2021 ( 2)陳火旺 .程序設計語言編譯原理 .2021 年 1 月第 3 版 . 北京 :國防工業(yè)出版社 . ( 3) 嚴蔚敏、吳偉民 .數(shù) 據(jù)結構( C 語言版) .1997 年 4 月第 1版 .北京 :清華大學出版社 .2021 ( 4) 王曉東編著 .計算機算法設計與分析 .電子工業(yè)出版社 .2021 第 13 頁,共 22 頁 8. 附錄 NFA 轉(zhuǎn)換為 DFA 采用 C++編程實現(xiàn)代碼如下 includeiostream includestring define MAXS 100 using namespace std。 string NODE。 //結點集合 string CHANGE。 //終結符集合 int N。 //NFA 邊數(shù) struct edge{ string first。 string change。 string last。 }。 struct chan{ string ltab。 string jihe[MAXS]。 }。 void kong(int a) { int i。 for(i=0。ia。i++) cout39。 39。 } //排序 void paixu(string amp。a) { 第 14 頁,共 22 頁 int i,j。 char b。 for(j=0。j()。j++) for(i=0。i()。i++) if((a[i])(a[i+1])) { b=a[i]。 a[i]=a[i+1]。 a[i+1]=b。 } } void eclouse(char c,string amp。he,edge b[]) { int k。 for(k=0。kN。k++) { if(c==b[k].first[0]) if(b[k].change==*) { if((b[k].last)()) he+=b[k].last。 eclouse(b[k].last[0],he,b)。 } } } void move(chan amp。he,int m,edge b[]) { int i,j,k,l。 k=()。 l=[m].length()。 第 15 頁,共 22 頁 for(i=0。ik。i++) for(j=0。jN。j++) if((CHANGE[m]==b[j].change[0])amp。amp。([i]==b[j].first[0])) if([m].find(b[j].last[0])[m].length()) [m]+=b[j].last[0]。 for(i=0。il。i++) for(j=0。jN。j++) if((CHANGE[m]==b[j].change[0])amp。amp。([m][i]==b[j].first[0])) if([m].find(b[j].last[0])[m].length()) [m]+=b[j].last[0]。 } //輸出 void outputfa(int len,int h,chan *t) { int i,j,m。 cout I 。 for(i=0。ilen。i++) cout39。I39。CHANGE[i] 。 coutendlendl。 for(i=0。ih。i++) { cout39。 39。t[i].ltab。 m=t[i].()。 for(j=0。jlen。j++) { kong(8m)。 m=t[i].jihe[j].length()。 coutt[i].jihe[j]。 } coutendl。 第 16 頁,共 22 頁 } } void main() { edge *b=new edge[MAXS]。 int i,j,k,m,n,h,x,y,len。 bool flag。 string jh[MAXS],endnode,ednode,sta。 cout請輸入 NFA 各邊信息 ,分別為 :起點 條件 [空為 *] 終點,最后以 結束:endl。 for(i=0。iMAXS。i++) { cinb[i].first。 if(b[i].first==) break。 cinb[i].changeb[i].last。 } N=i。 /*for(j=0。jN。j++) coutb[j].firstb[j].changeb[j].lastendl。*/ for(i=0。iN。i++) { if((b[i].first)()) NODE+=b[i].first。 if((b[i].last)()) NODE+=b[i].last。 if(((b[i].change)())amp。amp。(b[i].change!=*)) CHANGE+=b[i].change。 } len=()。 cout結點中屬于 終態(tài)的是: endl。 第 17 頁,共 22 頁 cinendnode。 for(i=0。i()。i++) if((endnode[i])()) { cout所輸終態(tài)不在集合中,錯誤! endl。 return。 } //coutendnode=endnodeendl。 chan *t=new chan[MAXS]。 t[0].ltab=b[0].first。 h=1。 eclouse(b[0].first[0],t[0].ltab,b)。 //求 eclouse //coutt[0].ltabendl。
點擊復制文檔內(nèi)容
教學課件相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1