版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
數(shù)據(jù)結(jié)構(gòu)c語(yǔ)言版實(shí)現(xiàn)順序棧的抽象數(shù)據(jù)類型實(shí)現(xiàn)順序棧的建立、銷毀、取棧頂元素、壓棧、彈棧的運(yùn)算給出表達(dá)式的括號(hào)匹配檢測(cè)算法創(chuàng)建運(yùn)算符棧和運(yùn)算數(shù)棧實(shí)現(xiàn)有一定通用性的程序,實(shí)現(xiàn)一個(gè)四則運(yùn)算表達(dá)式的求解實(shí)驗(yàn)代碼圖片實(shí)現(xiàn)順序棧的抽象數(shù)據(jù)類型typedefstruct{SElemType*base;SElemType*top;intstacksize;}SqStack;圖片實(shí)現(xiàn)順序棧的建立、銷毀、取棧頂元素、壓棧、彈棧的運(yùn)算//建立StatusInitStack(SqStack&s){s.base=(SElemType*)malloc(STACK_INIT_SIZE*sizeof(SElemType));if(!s.base)exit(overflow);s.top=s.base;s.stacksize=STACK_INIT_SIZE;returnOK;}//銷毀voidDestroyStack(SqStack&s){free(s.base);cout<<"Successtodestroy!";}//取棧頂元素StatusGetTop(SqStacks,SElemTypee){if(s.top==s.base)returnerror;e=*(s.top-1);returnOK;}//壓棧StatusPush(SqStack&s,SElemTypee){if(s.top-s.base>=s.stacksize){s.base=(SElemType*)realloc(s.base,(s.stacksize+STACKINCREMENT)*sizeof(SElemType));if(!s.base)exit(overflow);s.top=s.base+s.stacksize;s.stacksize+=STACKINCREMENT;}//endofif*s.top=e;s.top++;returnOK;}//彈棧StatusPop(SqStack&s,SElemType&e){if(s.top==s.base)returnerror;--s.top;e=*s.top;returnOK;}給出表達(dá)式的括號(hào)匹配檢測(cè)算法Statusmatching(stringexp){SqStacks;InitStack(s);SElemTypee;intstate=1,i=0,len;len=exp.length();while(i<len&&state==1)switch(exp[i]){case'(':case'[':case'{':{Push(s,exp[i]);i++;break;}case')':{GetTop(s,e);if(!StackEmpty(s)&&e=='('){Pop(s,e);i++;}elsestate=0;break;}case']':{GetTop(s,e);if(!StackEmpty(s)&&e=='['){Pop(s,e);i++;}elsestate=0;break;}case'}':{GetTop(s,e);if(!StackEmpty(s)&&e=='{'){Pop(s,e);i++;}elsestate=0;break;}default:i++;}//endofswitchif(StackEmpty(s)&&!state)returnOK;elsereturnerror;}圖片創(chuàng)建運(yùn)算符棧和運(yùn)算數(shù)棧#include<iostream>#include<algorithm>#include<cstring>#include<stack>#include<cmath>usingnamespacestd;stack<char>optr;//操作符棧stack<double>opnd;//操作數(shù)棧實(shí)現(xiàn)有一定通用性的程序,實(shí)現(xiàn)一個(gè)四則運(yùn)算表達(dá)式的求解/*利用兩個(gè)棧進(jìn)行模擬計(jì)算*/doubleCompute(){stack<char>optr;//操作符棧stack<double>opnd;//操作數(shù)棧optr.push('#');intlen=strlen(s);boolis_minus=true;//判斷'-'是減號(hào)還是負(fù)號(hào)for(g_pos=0;g_pos<len;){//1.負(fù)號(hào)if(s[g_pos]=='-'&&is_minus)//是負(fù)號(hào){opnd.push(0);optr.push('-');g_pos++;}//2.是右括號(hào))elseif(s[g_pos]==')'){is_minus=false;g_pos++;while(optr.top()!='('){doublea2=opnd.top();opnd.pop();doublea1=opnd.top();opnd.pop();charop=optr.top();optr.pop();doubleresult=Operate(a1,op,a2);opnd.push(result);}optr.pop();//刪除'('}//3.數(shù)字elseif(s[g_pos]>='0'&&s[g_pos]<='9'){is_minus=false;opnd.push(Translation(g_pos));}//4.(左括號(hào)elseif(s[g_pos]=='('){is_minus=true;optr.push(s[g_pos]);g_pos++;}//5.+-*/四種else{while(GetLevel(s[g_pos])<=GetLevel(optr.top())){doublea2=opnd.top();opnd.pop();doublea1=opnd.top();opnd.pop();charop=optr.top();optr.pop();doubleresult=Operate(a1,op,a2);opnd.push(result);}optr.push(s[g_pos]);g_pos++;}}while(optr.top()!='#'){doublea2=opnd.top();
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 福建省南平市外屯中學(xué)2021-2022學(xué)年高一英語(yǔ)下學(xué)期期末試卷含解析
- 4 上學(xué)路上 第二課時(shí) 說課稿-2023-2024學(xué)年道德與法治一年級(jí)上冊(cè)統(tǒng)編版
- 雙十二消費(fèi)者體驗(yàn)解讀
- 12 故宮博物院 說課稿-2024-2025學(xué)年語(yǔ)文六年級(jí)上冊(cè)統(tǒng)編版
- 歷史巨人典故解讀
- 科研之路揭秘
- 科技驅(qū)動(dòng):未來掌控者
- 外包施工合同(2篇)
- 2024活動(dòng)協(xié)作:權(quán)利與義務(wù)規(guī)定
- 專業(yè)人員2024年工作協(xié)議模板版B版
- 七年級(jí)數(shù)學(xué)(上)有理數(shù)混合運(yùn)算100題(含答案)
- 刑事辯護(hù)策略技巧案例
- 2024年陜西西安高新區(qū)管委會(huì)工作人員招聘筆試參考題庫(kù)附帶答案詳解
- 三年級(jí)上冊(cè)數(shù)學(xué)估算練習(xí)200題
- DAM10KW中波發(fā)射機(jī)各單元的檢測(cè)與調(diào)整指導(dǎo)示意圖
- 二年級(jí)美術(shù)復(fù)習(xí)計(jì)劃
- 物業(yè)采購(gòu)工作總結(jié)
- 組織文化與領(lǐng)導(dǎo)力
- 膠粘性不良改善報(bào)告
- 電子商務(wù)客服全套培訓(xùn)方案
- 河北省石家莊市橋西區(qū)2023-2024學(xué)年九年級(jí)上冊(cè)期末英語(yǔ)模擬試題(附答案)
評(píng)論
0/150
提交評(píng)論