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

正文內(nèi)容

數(shù)據(jù)結(jié)構(gòu)的c語言算法(doc63)-經(jīng)營管理-文庫吧資料

2024-08-23 08:57本頁面
  

【正文】 d,amp。 } void main() { int n,m。 }while(top=1)。amp。 st[top][0]=no(st[top][2],st[top][3])。 st[top][2]=m1。 top。st[top1][0]==3) { n1=st[top][1]。st[top][1]!=0amp。 } else if(top=1amp。st[top1][0]==2) { st[top1][1]=st[top][1]。st[top][1]!=0amp。 } if(top=1amp。 st[top][0]=no(st[top][2],st[top][3])。 st[top][2]=st[top1][2]1。 } else if(st[top][0]==2) { top++。 st[top][3]=st[top1][3]1。 st[top][1]=0。/*初值 m 進(jìn)棧 */ st[top][3]=n。 st[top][1]=0。 } int f2(int m,int n) { int st[MaxLen][4],top=1,m1,n1。 else if(n==0) return 2。 23 else return f1(m1,f1(m,n1))。根據(jù)非遞歸算法,畫出求 akm(2,1)時棧的變化過程 */ include define MaxLen 5000/*此數(shù)應(yīng)足夠大,因為 m和 n值的較小增長會引起函數(shù)值的極快增長,用的棧的空間也很大 */ int f1(int m,int n) { if(m==0) return n+1。 } } 練習(xí) /*已知 Ackerman 函數(shù)的定義如下: Akm(m,n)=n+1(m=0),akm(m1,1)(m!=0,n=0) akm(m1),akm(m,n1))(m!=0,n!=0) ; 2。n)==1) printf(計算結(jié)果 : %d\n,n)。 else { printf(波蘭表達(dá)式 : %d\n,exp)。str)。 printf(算術(shù)表達(dá)式 : )。/*存儲原算術(shù)表達(dá)式 */ char exp[MaxLen]。 return 1。 } top。 else return 0。/39。break。*39。break。39。break。+39。st[top]=d。)。 }while((ch=exp[t++])!=39。 do { d=10*d+ch39。939。amp。039。\039。 int t=0,top=1。 } int pvalue(char exp[],int *n) { int st[MaxLen],d。\039。top。 } } while(top=0) { exp[t]=st[top]。 } top++。top。/39。*39。/39。*39。st[top]=ch。t++。) { exp[t]=st[top]。 st[top]!=39。)/*判斷為加減號 */ 21 { while(top=0 amp。||ch==39。 } else if(ch==39。t++。) { exp[t]=st[top]。)/*判斷為右括號 */ { while(st[top]!=39。 } else if(ch==39。)/*判斷為左括號 */ { top++。 } else if(ch==39。39。 } i。) { exp[t]=ch。 ch=39。 amp。 ch=39。 amp。 while ((ch=str[i++])!=39。)/*判斷為數(shù)字 */ { exp[t]=ch。 ch=39。 amp。) { if(ch=39。/*t 作為 exp 的下標(biāo), top 作為 st的下標(biāo), i 作為 str 的下標(biāo) */ while((ch=str[i++])!=39。/*作為棧使用 */ char ch。 getch()。 if(correct(str)) printf(表達(dá)式括號匹配 \n)。 printf(str: )。 } void main() { 20 char *str。ok) return 1。st)amp。 } if(!ok) break。)) ok=0。x==39。x)amp。:if(!(pop(amp。 case39。)) ok=0。x==39。x)amp。:if(!(pop(amp。 case39。)) ok=0。x==39。x)amp。:if(!(pop(amp。 case39。)。st,39。{39。break。[39。:push(amp。 case39。)。st,39。(39。\039。 for(i=0。 init(amp。 char x。 printf(\n)。i0。 } } void disp(stack *st)/*輸出棧的所有元素 */ 19 { int i。 } else { *x=stdata[sttop]。 } int gettop(stack *st,elemtype *x)/*獲取棧頂元素 */ { if(sttop==0) { printf(棧下溢出 \n)。 } } int empty(stack *st)/*判斷棧空 */ { if(sttop==0) return 1。 sttop。 return 0。 return 1。 } else { sttop++。 } int push(stack *st,elemtype x)/*入棧 */ { if(sttop==MaxLen1) { printf(棧溢出 \n)。 }stack。 typedef struct sqstack { elemtype data[MaxLen]。 order(e,h)。 order(h,e)。e)。 int i。 printf(\n)。/*為下一個節(jié)點的地址 */ pre=pre1。 pre1=p。 if(h==NULL) printf(空表 \n)。 } void order(dlist *h,dlist *e) { dlist *pre=NULL,*pre1,*p=h。 } i++。 /*將 slink 置為前后節(jié)點地址之異或 */ r=pre。r=NULL。/*創(chuàng)建一個節(jié)點 */ sdata=x。 break。 if(x==0)/*生成最后一個節(jié)點的 link 值后退出循環(huán) */ { prelink=xor(r,NULL)。 scanf(%d,amp。 printf(創(chuàng)建一個雙鏈表 (以 0 結(jié)束 )\n)。 } dlist *create(dlist **e) { int i=1,x。 add3=add1^add2。 add1=(long)p1。 dlist *xor(dlist *p1,dlist *p2) /*在 c/c++中異或運算符不能對地址進(jìn)行異或運算,所以先將地址值轉(zhuǎn)換為長整形,然后進(jìn)行異或運算,再將結(jié)果強制轉(zhuǎn)換成地址。 struct dnode *link。 disp(head3)。 disp(head2)。 head2=create()。 } void main() { nodetype *head1,*head2,*head3。 free(pc)。/*h2 單鏈表還有節(jié)點時 */ pc=h3。 } if(pa!=NULL) pcnext=pa。 pa=panext。 15 } else/*padata=pbdata 的情況 */ { pcnext=pa。pc=pb。 pa=panext。pb!=NULL) if(padatapbdata) { pcnext=pa。/*pc 總是指向生成的新單鏈表的最后一個節(jié)點 */ while(pa!=NULLamp。 h3=(nodetype *)malloc(sizeof(nodetype))。 disp(headc)。 headb=create()。 } void main() { nodetype *heada,*headb,*headc。 pb=r。 pbnext=q。 r=pbnext。 return NULL。注意:單鏈表的長度值 m和 n均未顯示存儲 */ include nodetype *bine(nodetype *ha,nodetype *hb) { nodetype *hc=ha,*pa=ha,*pb=hb,*q,*r。 } /*運行結(jié)果 建立一個單鏈表 輸入第 1 節(jié)點 data 域值: 1 輸入第 2 節(jié)點 data 域值: 2 輸入第 1 節(jié)點 data 域值: 3 輸入第 1 節(jié)點 data 域值: 4 輸入第 1 節(jié)點 data 域值: 5 輸入第 1 節(jié)點 data 域值: 0 輸出一個單鏈表 1 2 3 4 5 輸出一個單鏈表 5 4 3 2 1 */ 練習(xí) /*設(shè)線性表 A=( a1,a2,… ,am) ,B=(b1,b2,… ,bn),試寫一個按下列規(guī)則合并 A, B 為線性表 C的算法,即使得C=( a1,b1,… ,am,bm,bm+1,… ,bm) 當(dāng) m=n 時,或者 C=(a1,b1,… ,an,bn,an+1,… ,am) 當(dāng) mn 時。 head=invert(head)。 head=create()。 return h。 } hnext=NULL。 p=q。 while(q!=NULL) { r=qnext。 } else { p=h。 if(len(h)=1) { printf(逆置的單鏈表至少有 2 個節(jié)點 \n)。 } free(pa)。 pa=pb。 if(pb=NULL)/*只有一個節(jié)點的情況 */ free(pa)。 } void dispose(nodetype *h)/*釋放單鏈表的所有節(jié)點占有的空間 */ { nodetype *pa=h,*pb。 } else printf(輸入的 i值不正確 \n)。/*s 指向要刪除的節(jié)點 */ pnext=snext。amp。 } else { p=find(h,i1)。 if(i==1)/*刪除第一個節(jié)點 */ { h=hnext。 } nodetype *del(nodetype *n,int i)/*刪除第 i 個節(jié)點 */ { nodetype *p=h,*s。 } else printf(輸入的 i值不正確 \n)。/*查找第 i 個節(jié)點,并由 p 指向該節(jié)點 */ if(p!=NULL) { snext=pnext。 h=s。 snext=NULL。 s=(nodetype *)malloc(sizeof(nodetype))。 } 11 return p。ji)/*查找第 i 個節(jié)點,并由 p 指向該節(jié)點 */ { j++。/*i 上溢或下溢 */ else { while (p!=NULLamp。 int j=1。 } return i。 while(p!=NULL) { p=pnext。 } int len(nodetype *h)/*返回單鏈表的長度 */ { int i=0。
點擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1