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

正文內(nèi)容

數(shù)據(jù)結(jié)構(gòu)課習(xí)題參考答案-wenkub.com

2025-06-20 20:46 本頁(yè)面
   

【正文】 }} 若S=“ABCDEFGHIJKLMNO”,I=3, j=10則調(diào)用后結(jié)果為 “ABC* ***LMNO”3_1編寫一個(gè)二分插入排序的C程序一:數(shù)據(jù)結(jié)構(gòu) 用一個(gè)數(shù)組a來(lái)存儲(chǔ)數(shù)據(jù)元素,線性存儲(chǔ)可以方便存儲(chǔ)。*39。*39。m++)q=qlink。 if((i+j1)/4l)pdata[h]=39。 l++。 h=i%4。}若S1=“ABCDEFGHI”;S2=“JKLMNOP”;I=6;則調(diào)用后得 “ABCDEF**JKLMNOP*GHI2_3,編一個(gè)實(shí)現(xiàn)STRDEL(S,I,J)的C函數(shù)。 while( m4) rdata[++m]=’*’。 for(m=0。l++)qdata[l]=39。)qdata[mk]=39。 /* 39。\039。 for(m=k。 for(l=0。 NODE *p, *q, *r。 }。試編寫一個(gè)實(shí)現(xiàn)STRINS(S1,I,S2)的C函數(shù)。s string:\n)。s string:\n)。 printf(Please input the S39。}main(){ printf(Input the length of S39。 return。 if(kmp_match(s,temp,flink,m,i)!=1) { printf(The max match is:\n)。 i=n。 j。amp。}}int kmp_match(char t[],char p[],int flink[],int n,int m){ int i,j。amp。flink[0]=1。 s2[k]=39。 if(j0||im) return(1)。int flink[MAXN]。解答: 該題的本質(zhì)即為模式匹配,實(shí)際上是把t中所有可能長(zhǎng)度的子串與s進(jìn)行模式匹配,從最長(zhǎng)長(zhǎng)度n開(kāi)始,若匹配成功就直接輸出當(dāng)前子串,否則長(zhǎng)度自減1后重新開(kāi)始匹配。(2) 0,a,0,b0,c0,d,^ 得到的深度為1。 }d=depth(head)。 p=p。 for(i=1。 printf(the depth is:%d\n,d)。 ptag=0。 for(i=1。 /*(2)*/ headtag=0。 head=NULL。}main(){ NODE *head,*p。 if((ptag)==0)max=1。}。 union{struct node *dlink。我們規(guī)定空的廣義表的深度為0,而一般的有 0 若s?是一個(gè)原子depth(s)= { 1+max(depth(a0),… depth(an1)) 若s是廣義表(a0,a1,…an1)編寫一個(gè)求解廣義表s的深度的C函數(shù)。rlink=NULL。 while(p!=NULL) {q=p。for(i=1。 x[i]= 1000* y[i]/m。 y[0]=568731。long int y[801]。 }}2) 拉鏈法 include define M 1000 define m 2 31typedef struct node{int key。t[(j+k)%M]=0。i++) {j= x[i]。iM。i801。int t[M]。(2) 用拉鏈法解決沖突。 return(head)。p=plink。return(head)。 kdata=n。 }NODE。 分析:先數(shù)出原鏈表中結(jié)點(diǎn)的個(gè)數(shù),存入新開(kāi)辟的表頭結(jié)點(diǎn)中,將表頭結(jié)點(diǎn)連到原鏈表表頭上,并將表尾指針指向表頭結(jié)點(diǎn),head指向表頭結(jié)點(diǎn)。Return head。 printrl(head,i,k)。n,amp。 NODE *head。a++) { q=p。 free(p)。 p=plink。 p=plink。 while(pdata!=i) { q=p。}void printrl(NODE *head,int i,int k){ int a。 new=newlink。 new=head。typedef struct node NODE。 return z。 if(ylink==NULL) break。y){ yn=ylink。 if(x==NULL) return y。四. 程序如下:typedef struct T{ int data。 zhead=linklist(xhead,yhead)。 printf(input a string:\n)。}main(){char a[100],b[100]。} s=head。p=plink。p=s。q!=NULL) {rlink=p。 headlink=NULL。 } return(head)。 qdata=a[i]。 for(i=1。 head=(NODE *)malloc(sizeof(NODE))。 int i。 struct node *link。分析和算法操作:需要一個(gè)由字符串生成鏈表的函數(shù)。 設(shè)X=(x0,x1,…,xm1)和Y=(y0,y1,…yn1)是兩個(gè)線性鏈表。}[測(cè)試](1) 如果原單鏈表為空或?yàn)閎cdef,則刪除失敗。 if(p2==*p_head)*p_head=p1。p1data!=’a’) {p3=p2。[流程圖]P1=NULL Y NnnP1data=a Y NP2=NULL?P3=p2P2=p1P1=p1link Y NP2=head? Y NP3link=p1*p_head=p1返回1返回0 [C程序]int fro_del(NODE** p_head){ NODE * p1=*p_head,*p2=NULL,*p3==NULL。(3) 否則,刪除p2指向的結(jié)點(diǎn),并返回0。為了刪除值為a的結(jié)點(diǎn)的前趨結(jié)點(diǎn),我們使用3個(gè)NODE類型的指針p1,p2,p3。[存儲(chǔ)結(jié)構(gòu)]線性鏈表采用標(biāo)準(zhǔn)形式存儲(chǔ)的單鏈表,并使用如下的說(shuō)明:typedef struct node{ char data。p=plink) t=p。b39。 *head=q。 qdata=a。 struct node *link。 定義指針NODE **head,*p,*q,*t。若值為b的結(jié)點(diǎn)不在線性鏈表中,則把a(bǔ)插在表的最后。 while(p!=NULL) { printf(%d ,pdata)。 } printf(\n)。 head=create(n)。 return(head)。 p=q。i++) { scanf(%d,amp。 head=(NODE*)malloc(sizeof(NODE))。 } NODE* create(n)/*建立初始鏈表*/ int n。q=r。 if(head==NULL) return(NULL)。 NODE* tranfer(head) NODE *head。算法如下:(1) 置P為鏈表首址,R,Q為空;(2) 若P為空返回NULL;算法結(jié)束,轉(zhuǎn)(5),否則轉(zhuǎn)(3);(3) 若鏈表只有一個(gè)結(jié)點(diǎn),轉(zhuǎn)(5),否則轉(zhuǎn)(4);(4) R=P,P=PLINK,RLINK=Q,置Q=R,若PLINK為空,轉(zhuǎn)(5),否則轉(zhuǎn)(4);(5) PLINK=R,返回P,算法結(jié)束。 a[i].link=NULL。i++) {a[i].data=i。}測(cè)試報(bào)告:void main(){NODE a[10]。p=head。 struct node *link。//關(guān)鍵字的類型自定 struct node *link。 else { printf(the pos_expresstion is:\n)。 } midexpress[i]=39。!39。)\n)。 int i,result。 posexpress[j]=39。 break。: while(stack[top]!=39。: stack[++top]=c。 stack[++top]=c。/39。39。) { if(ischar(c)) posexpress[j++]=c。 i=0。 stack[0]=39。)) return(1)。amp。c=39。//置于棧底,保證后面的運(yùn)算符能進(jìn)棧 }}int ischar(char c){ if((c=39。:return(0)。39。:return(2)。 //棧中的運(yùn)算符的優(yōu)先級(jí) case 39。:return(1)。 case 39。*39。下面給出程序:define MAXN 100int icp(char c){ switch(c) { case 39。c) 若當(dāng)前的字符是運(yùn)算符(‘+’,’‘,’*’,’/’,’^’),則將它的(進(jìn)棧前)優(yōu)先級(jí)別與棧頂字符的(棧中)優(yōu)先級(jí)別相比較。第一次進(jìn)棧1:1,2,3,4,5; 輸出:12345第二次進(jìn)棧2:6,7,8,9,10; 輸出:678910棧1連續(xù)出棧5次后,繼續(xù)執(zhí)行出棧,輸出為the stack is to pop.棧2連續(xù)出棧3次后,輸出棧2中元素為9101.10 寫出與下列表達(dá)式等價(jià)的后綴表達(dá)式:(1) a+b*c/d+e^f^g+h(2) (a+b)*(c/d)+(e^f)^(g+h)存儲(chǔ)結(jié)構(gòu): 對(duì)于兩個(gè)表達(dá)式采用字符數(shù)組存儲(chǔ)形式,并以‘\0’作為結(jié)尾。 printf(\n)。 printf(\n)。 break。 scanf(%d,amp。 if(i==1||i==2) push(x,i)。 switch(No) {case 1: printf(input the number you want push and the team No,\n)。\nprint:3\nexit:0。iM。 return。}void pop(int i){if(i==1) {if(head1==0) {printf(the stack is to pop.\n)。void push(int x,int i){if(head1==head2+1) {printf(the stack is to push.\n)。分析與算法步驟:因?yàn)閠ail1=0,tail2=M-1,一般情況下不會(huì)變動(dòng),所以省去這2個(gè)量。這里i=1表示左邊的棧,=2則表示右邊的棧。所以 an=(1n+1/2)(1)n22n+1化簡(jiǎn)得an=1/(n+1)(2nn)n節(jié)車廂出站有1/(n+1)(2nn)種排列順序。那么a n是用下列方法所形成的所有可能排列順序的總數(shù):某時(shí)刻站中只剩下編號(hào)為k+1的車廂,而此時(shí)左邊軌道是已出站的編號(hào)為1,2,3,…,k的車廂,則排列順序有ak種;右邊軌道是尚未進(jìn)站的編號(hào)為k+1,k+2,…,k+n的nk1節(jié)車廂,則可能有的排列順序有ank1種。c=multi(a,b)。printf(\nA:\n)。printf(Now please input A:\n)。root=rootnext。return(root)。ch)。(qexp))。(qdata))。if(p==NULL) root=q。y39。ch=39。||ch==39。ch)。 char ch。 else pcnext=p。 else {p=(NODE *)malloc(sizeof(N
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)教案相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1