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

正文內(nèi)容

數(shù)據(jù)結(jié)構(gòu)線性表的基本操作-閱讀頁

2025-07-15 20:54本頁面
  

【正文】 } =。 return 1。 } return *()。s,BiTree e){ if(=) { =(BiTree *)realloc(, (+STACKINCREMENT)*sizeof(BiTree))。 } =+。 } *()=e。 return 1。s){ if(==) { return NULL。}void DestroyStack(Stack amp。}/*棧的實現(xiàn)結(jié)束*/2. 二叉樹的結(jié)點類型定義typedef struct BiTNode{ char data。 struct BiTNode *rchild。/*利用棧建立二叉樹的存儲結(jié)構(gòu)*/void CreatBiTree(){ BiTree temp,a,b。 temp=(BiTree)malloc(sizeof(BiTNode))。39。/*虛擬棧底壓棧*/ while((*p!=39。)||(GetTop(optrstack)data!=39。)) { if((*p=65)amp。(*p=90))/*當(dāng)前是操作數(shù)*/ { temp=(BiTree)malloc(sizeof(BiTNode))。 templchild=NULL。 Push(opndstack,temp)。 } else { /*當(dāng)前是運算符*/ switch(cmp(GetTop(optrstack)data,*p)) { case 39。: /*棧頂?shù)倪\算符的優(yōu)先級小,當(dāng)前運算符壓棧*/ temp=(BiTree)malloc(sizeof(BiTNode))。 templchild=NULL。 Push(optrstack,temp)。 break。=39。 free(temp)。 break。39。 b=Pop(opndstack)。 if(tempdata!=39。)/*出棧的運算符有兩個操作數(shù)*/ { a=Pop(opndstack)。 } Push(opndstack,temp)。 }/*switch*/ }/*else*/ }/*while*/ root=Pop(opndstack)。/*去除運算符棧的偽棧底,并將其所占內(nèi)存單元釋放*/ free(temp)。tree){ if(!tree) { return 0。amp。 } else { switch(treedata) { case 39。: return (GetValue(treelchild)||GetValue(treerchild))。amp。: return (GetValue(treelchild)amp。GetValue(treerchild))。~39。 } }}/*二叉樹的銷毀算法*/void DestroyBiTree(BiTree amp。 } else if((treelchild==NULL)amp。(treerchild==NULL)) { free(tree)。 } else { DestroyBiTree(treelchild)。 free(tree)。/*varitab[0]存放變量的個數(shù)*//*求變量的組合值的算法*/void CreatVaritab(unsigned n){ int i。i*varitab。 }}4. 運算符的優(yōu)先級表char optrtable[6][7]={39。,39。,39。39。~39。(39。)39。39。|39。39。39。39。39。39。39。amp。,39。,39。,39。,39。,39。,39。, 39。,39。,39。,39。,39。,39。,39。, 39。,39。,39。,39。,39。,39。,39。, 39。,39。,39。,39。,39。,39。,39。}。)39。)39。 for(i=1。i++) { if(optrtable[i][0]==a) break。j7。 } return optrtable[i][j]。2. 偽棧底開始由于失誤,雖然出棧,但忘記釋放所占內(nèi)存空間。4. 輸入2命令,程序可以與用戶交互,如果是永真式,則程序顯示永真式,如果是矛盾式,則程序顯示矛盾式,否則用戶可以輸入變量的一組值,程序可以輸出對應(yīng)的表達式的值。6. 測試結(jié)果**************************請輸入命令:1輸入變量個數(shù):2輸入表達式: (A | ~A)amp。 ~A) amp。( A | ~B)**************************請輸入命令:2輸入變量值:A=1B=1表達式值為真!輸入命令:1輸入變量值:A=1B=0表達式值為真!輸入命令:1輸入變量值:A=0B=0表達式值為假!輸入命令:2**************************請輸入命令:3真值表是: A B 0 0 假 0 1 假 1 0 真 1 1 真**************************請輸入命令:4謝謝使用!請按任意鍵繼續(xù). . .7. 附錄本程序為單文件程序,結(jié) 論數(shù)據(jù)結(jié)構(gòu)的研究不僅涉及到計算機硬件的研究,而且和計算機軟件的研究有著更密切的關(guān)系,無論是編譯程序還是操作系統(tǒng),都涉及到數(shù)據(jù)元素在存儲器中的分配問題。在課程設(shè)計中,應(yīng)該力求算法簡明易懂,而易于轉(zhuǎn)換為上機程序;如果程序反復(fù)多次使用,則應(yīng)該盡可能選用快速的算法;如果待解決的問題數(shù)據(jù)量極大,機器的存儲空間較小,則在編寫算法時應(yīng)該考慮如何節(jié)省空間。經(jīng)過兩個星期的實際操作和搜索相關(guān)資料,終于讓我完成了任務(wù)。通過實際操作,我也發(fā)現(xiàn)我的好多不足之處:(1)用棧的結(jié)構(gòu)來解決表達式的求值,首先要解決的問題是如何將人們習(xí)慣書寫的表達式轉(zhuǎn)換成計算機容易處理的表達式。(2)對一些看似簡單的東西掌握不夠熟練,比如由于函數(shù)的調(diào)用參數(shù)問題不熟而造成了調(diào)試的困難。(3)棧的結(jié)構(gòu)理解不夠清晰,造成了設(shè)計程序時理不清頭緒,需要對數(shù)據(jù)結(jié)構(gòu)有更深層次的理解。表達式計算是實現(xiàn)程序設(shè)計語言的基本問題之一,也是棧的應(yīng)用的一個典型例子。深入了解棧和隊列的特性,以便在解決實際問題中靈活運用它們,同時加深對這種結(jié)構(gòu)的理解和認識。利用已知的算符優(yōu)先關(guān)系,實現(xiàn)對算術(shù)四則混合運算表達式的求值,并仿照教科書的例子在求值中運算符棧、運算數(shù)棧、輸入字符和主要操作的變化過程。對于算術(shù)表達式這個程序,主要利用棧,把運算的先后步驟進行分析并實現(xiàn)簡單的運算!為實現(xiàn)算符優(yōu)先算法,可以使用兩個棧,一個用以寄存運算符,另一個用以寄存操作數(shù)和運算結(jié)果。4. 程序執(zhí)行時的命令:本程序為了使用具體,采用菜單式的方式來完成程序的演示,幾乎不用輸入什么特殊的命令,只需按提示輸入表
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1