999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

將非結(jié)構(gòu)化的流程圖轉(zhuǎn)化為結(jié)構(gòu)化的N-S流程圖的通用算法框架

2010-01-01 00:00:00陳培軍王欣潔李馨梅

摘要:介紹了將非結(jié)構(gòu)化流程圖等價(jià)的轉(zhuǎn)化為結(jié)構(gòu)化的N-S流程圖的通用算法框架。

關(guān)鍵詞: 流程圖:N-S流程圖:非結(jié)構(gòu)化流程圖:等價(jià)變換

中圖分類號(hào):TP311

文獻(xiàn)標(biāo)識(shí)碼:A

文章編號(hào):1002-2422(2010)06-0103-02

1 通用轉(zhuǎn)換框架

(1)將每一步的具體的計(jì)算過程抽象、簡化,并用不同的編號(hào)表示不同的過程,簡化的傳統(tǒng)流程圖如圖1所示。

(2)將流程圖看成圖論中的圖。將流程圖中的每個(gè)操作,每個(gè)判斷“是”,“否”均看成圖的頂點(diǎn),流向箭頭看成有向圖中的有向邊,則可將傳統(tǒng)的流程圖看成一個(gè)有向圖。根據(jù)需要,也可將其視為無向圖,則循環(huán)結(jié)構(gòu)中有圈、分支結(jié)構(gòu)或不同的出口最終匯總時(shí),也會(huì)出現(xiàn)圈。

(3)將簡單的循環(huán)結(jié)構(gòu)或分支結(jié)構(gòu)用一個(gè)編號(hào)表示,并記錄該編號(hào)的含義,從而進(jìn)一步簡化流程圖。

如果流程圖中出現(xiàn)圖2中的三種情形,都可以簡化。圖2(a)和圖2(c)中可用一個(gè)編號(hào)表示虛線框住的部分,對(duì)圖2(b)需要先通過重復(fù)書寫語句的等價(jià)變換變成類似圖2(a)的樣子。

有了上面的理解,從而一般的框架可抽象為:找出當(dāng)前頂點(diǎn)個(gè)數(shù)最小的圈,依次對(duì)圈中每個(gè)頂點(diǎn)的度進(jìn)行判斷。如果只有一個(gè)頂點(diǎn)的度大于等于3,并且該頂點(diǎn)的度等于4,則為圖2中(a)中的情形;如果只有兩個(gè)頂點(diǎn)的度大于等于3,并且這兩個(gè)頂點(diǎn)的度都等于3,進(jìn)一步若該圈在原有向圖中,也是一個(gè)有向圈,則為圖2中(b)的情形,否則為圖2中(c)的情形。重復(fù)上述過程直到?jīng)]有圈可以簡化。

(4)將流程圖分成一系列順序執(zhí)行的子塊。不包含在任意圈中的頂點(diǎn)自身為一個(gè)子塊。對(duì)于任意的兩個(gè)圈,如果這兩個(gè)圈有一個(gè)相同的頂點(diǎn),則這兩個(gè)圈中包含的所有頂點(diǎn)屬于同一個(gè)子塊;對(duì)于上述子塊,若包含滿足下面性質(zhì)的頂點(diǎn)一所有指向該頂點(diǎn)的有向邊所在的圈所包含的頂點(diǎn)與所有從該頂點(diǎn)出發(fā)的有向邊所在的圈所包含的頂點(diǎn)的交集只有這個(gè)頂點(diǎn),則可在該頂點(diǎn)處將該子塊分成兩個(gè)子塊,該頂點(diǎn)包含在后面的子塊里。經(jīng)過上述過程,可將流程圖分成一系列順序執(zhí)行的子塊。該實(shí)例可以分為三個(gè)子塊,A、E分別為兩個(gè)子塊,其余的屬于同一個(gè)子塊。

(5)對(duì)每個(gè)包含多個(gè)圈的子塊,通過逐分支遍歷。動(dòng)態(tài)調(diào)整建立其N-S流程圖。如果只有分支結(jié)構(gòu),即該子塊中雖然有圈,但沒有有向圈,則總可以通過重復(fù)書寫語句將其轉(zhuǎn)化為N-S流程圖。如果最外層的條件為分支條件,則可以通過重復(fù)書寫語句得到該條件的每個(gè)分支,然后利用第(4)步將每個(gè)分支分解為一系列順序執(zhí)行的子塊。根據(jù)上面的分析,設(shè)計(jì)以下抽象的算法:

①如果該子塊不包含圈,結(jié)束;否則,執(zhí)行第②步。

⑦從子塊的入口,順著箭頭的方向,逐分支遍歷,找到第一個(gè)條件,判斷條件是否包含于任意一個(gè)有向圈中。如果不包含于任何一個(gè)有向圈中,則采用重復(fù)書寫語句的方法得到該條件的每一個(gè)分支,并將每一個(gè)分支分成一系列順序執(zhí)行的子塊,對(duì)每一個(gè)子塊遞歸(轉(zhuǎn)第①步);如果包含于一個(gè)有向圈中,則轉(zhuǎn)第⑤步。

③將該條件作為當(dāng)前子塊的最外層的循環(huán)條件,和該條件位于同一個(gè)有向圈中的其他條件均作為分支條件。按一定的順序遍歷所有分支,通過動(dòng)態(tài)調(diào)整,得到結(jié)構(gòu)化的循環(huán)體和退出循環(huán)后的操作,從而得到相應(yīng)的N-S流程圖。

圖3中的5個(gè)有向圈包含了子塊所有的頂點(diǎn),為全部可能的遍歷路徑。從子塊的入口,順著箭頭的方向,逐分支遍歷,找到第一個(gè)條件C1,且C1包含在有向圈內(nèi)見圖3(a)和圖3(b),選擇將C1作為外層循環(huán)條件。由圖1可以看出退出循環(huán)后,在子塊內(nèi),什么也不做;繼續(xù)找出條件C1不成立時(shí)的循環(huán)體。從包含C1的最簡單的有向圈圖3(a),通過重復(fù)書寫語句得到圖4(a),其中畫問號(hào)的地方有待于進(jìn)一步完善,下面繼續(xù)遍歷其他的路徑將其不斷完善。

繼續(xù)找包含條件C1的當(dāng)前最簡單的路徑,對(duì)該實(shí)例還只有一個(gè)有向圈見圖3(b)包含c1,將該圈包含的內(nèi)容融入4(a),得到圈4(b),其中兩個(gè)畫問號(hào)的分支需要確定。

從剩下的路徑中選擇一個(gè)簡單的見圖3(c)。圖3(c)表示當(dāng)條件C3不成立時(shí),無條件執(zhí)行循環(huán);當(dāng)c3成立時(shí),退出循環(huán)。引入輔助變量flag1,給其賦初值O,當(dāng)flag1=0時(shí),執(zhí)行循環(huán);當(dāng)flag1=1時(shí),退出循環(huán)。當(dāng)C3不成立時(shí),不修改flag1的值,從而繼續(xù)執(zhí)行循環(huán);當(dāng)c3成立時(shí)。修改flag1的值為1,從而退出循環(huán)。所以將圖3(c)進(jìn)一步融入已有的N-S流程圖,得到圖4(c)。進(jìn)一步融入圖3(d)(該圖表示當(dāng)c3成立時(shí),c4不成立時(shí),C5不成立時(shí),無條件執(zhí)行操作H、G),得圖4(d)。

對(duì)最后的有向圈圖3(e),表示當(dāng)C2和C3成立,C4不成立,C5成立,退出內(nèi)層的循環(huán),執(zhí)行完操作J后,無條件進(jìn)入條件C1的循環(huán)體,對(duì)應(yīng)圖4(d)中畫問號(hào)的部分的內(nèi)容。引入輔助變量flag2,賦初值O,修改外層循環(huán)的條件為“當(dāng)c1不成立或flag2==1”,為了使其他分支仍與原來等價(jià),在外層循環(huán)體內(nèi)的開始部分,增加語句flag2=0;所以4(d)中畫問號(hào)部分的操作為J;flag1=1(跳出內(nèi)層循環(huán));flag2=1(無條件執(zhí)行條件c1的循環(huán)體)。結(jié)果見圖5。

算法框架中所有的其他操作,都是為了將流程圖轉(zhuǎn)換為類似圖1的情形,核心的問題就是處理類似上面的問題。通過上面的分析,可以體會(huì)到如何決定遍歷的順序,如何決定條件類型,以及如何逐分支將當(dāng)前的結(jié)果融入已有的框架,修正得到與已有框架相容的新的框架,最終得到N-S流程圖的過程。上述過程還有待于進(jìn)一步抽象、細(xì)化、完善。要解決上下文的語義識(shí)別、邏輯關(guān)系的理解及其等價(jià)變形。圖4不斷修正得到N-S流程圖的中間過程

(6)將各個(gè)層級(jí)的子塊組裝,將第(3)步中得到的各個(gè)中間編號(hào),根據(jù)相應(yīng)的記錄逐級(jí)展開還原,得到相應(yīng)的N-S流程圖。對(duì)本例只有一個(gè)子塊有圈,并且第一個(gè)條件即為循環(huán)條件,且沒有第(3)步中的簡化,所以組裝非常簡單,最終的結(jié)果如圖5所示。

2 結(jié)束語

結(jié)合具體的實(shí)例,給出了由非結(jié)構(gòu)化的流程圖轉(zhuǎn)化為與之等價(jià)的N-S流程圖的宏觀算法框架,僅是一種可行的方法,可用于指導(dǎo)一般問題的轉(zhuǎn)換。

參考文獻(xiàn)

[1]鄧德祥.結(jié)構(gòu)化流程圖的回顧與改進(jìn)意見[J].北京:北方工業(yè)大學(xué)學(xué)報(bào),1992,4(3):81-87.

[2]張廣泉.非結(jié)構(gòu)化程序流程圖及其等價(jià)變換[J].重慶:重慶師范學(xué)院學(xué)報(bào)(自然科學(xué)版),1993,10(3):28-31.

[3]孫靖民,梁迎春.機(jī)械優(yōu)化設(shè)計(jì)[M](第4版).北京:機(jī)械工業(yè)出版社,2007:130-135.

主站蜘蛛池模板: 免费a级毛片视频| 国精品91人妻无码一区二区三区| 91免费片| 免费看av在线网站网址| 手机在线免费不卡一区二| 国产精品美乳| 亚洲av成人无码网站在线观看| 日本草草视频在线观看| 欧美日韩午夜| 99久久这里只精品麻豆| 呦女亚洲一区精品| 亚洲熟女偷拍| 国产精品网曝门免费视频| 2022国产91精品久久久久久| 亚洲视频在线观看免费视频| 在线欧美一区| AV不卡在线永久免费观看| 91尤物国产尤物福利在线| 国产视频你懂得| 中国特黄美女一级视频| 亚洲有码在线播放| 亚洲av无码片一区二区三区| 麻豆精品在线| 毛片基地美国正在播放亚洲| 日韩精品无码免费专网站| 久久夜色精品| 天堂亚洲网| 亚洲精品视频网| 欧美特黄一级大黄录像| 亚洲成肉网| 国产亚洲日韩av在线| 亚洲国产中文欧美在线人成大黄瓜 | 精品少妇人妻无码久久| 成人一级免费视频| 九九视频免费在线观看| 四虎永久免费地址| 在线99视频| 日韩毛片在线播放| 97超级碰碰碰碰精品| 人人澡人人爽欧美一区| 国产精品久久精品| 久久无码免费束人妻| 性做久久久久久久免费看| 亚洲最黄视频| 日韩午夜伦| 中文字幕佐山爱一区二区免费| 国产欧美日韩另类精彩视频| 国产美女精品一区二区| 亚洲精品高清视频| A级毛片高清免费视频就| 91精品久久久久久无码人妻| 国模视频一区二区| 99热这里只有精品5| 九九热精品免费视频| 狠狠亚洲婷婷综合色香| 毛片基地视频| 72种姿势欧美久久久大黄蕉| 久久久久中文字幕精品视频| www亚洲精品| 亚洲看片网| 91在线日韩在线播放| 欧美精品在线看| 国产精品成| 波多野结衣无码中文字幕在线观看一区二区 | 国产精品免费p区| 亚洲男人天堂久久| 精品国产美女福到在线不卡f| 国产日本视频91| 欧美a在线| 亚洲人在线| 久久人与动人物A级毛片| 玖玖精品在线| 色呦呦手机在线精品| 日韩在线第三页| 亚洲一区二区三区香蕉| 亚洲国产av无码综合原创国产| 日韩黄色大片免费看| 国产人妖视频一区在线观看| 国产精品无码久久久久久| 久久综合伊人77777| 性视频一区| 国产91高清视频|