




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
解:數據是對客觀事物的符號表示。在計算機科學中是指所有能輸入到解:抽象數據類型包含一般數據類型的概念,但含義比一般數據類型更廣、更抽具體語言系統內部定義,直接提供給編程者定義用戶數據,因此稱它們為預定義通常由編程者定義,包括定義它所使用的數據和在這些數據上所進行的操作。在據部分和操作部分時,要求只定義到數據的邏輯結構和操作說明,不考慮數據的}count=log2n-2i=0n2n)+n5i=1n+1-1)i=1i=1{}f=0f=0fn=fn-1+fn-2+…+fn-k{}}}SumSumScore(SchoolNamesn,Co{if(a[i].sex==Female)t}}temp.TotalSum=temp.Male}1.19試編寫算法,計算i!*2i的值并存入數組a[{}}elsecout<<a[i]<<"";}}i=0{cout<<"輸入多項式的階次n:";cout<<"Thepolynomailvalueis"<<polynomai}{}解:頭指針是指向鏈表中第一個結點的指針。首元結點是指鏈表中存儲第一個數點是在首元結點之前附設的一個結點,該結點不存儲數據解:當線性表的數據元素在物理位置上是連續存儲的時候,用順序表比用鏈表好StatusDeleteK(SqLi{if(i<1||k<0||i+k>a.length)refor(j=a.length;j>=i+1;j--)a.elema.length--;}}StatusDeleteK(SqLi{if(i<0||i>a.length-1||k<0||k>}StatusInsertOrderList(SqList&va,Ele{//在非遞減的順序表va中插入元素x并使其仍成為順序表for(i=va.length;i>0,x<v}綴后的子表。若A’=B’=空表,則A=B;若A’=空表,而B’≠空表,或者兩者均不為空表,且A’的首元小于B’的首元,則A<B;否則A>B。試寫一個比較A,B大小的算法。StatusCompareOrderList(SqList&{k=A.length>B.length?A.length:B.l}}{}}{}}voidMergeList_L(LinkList&ha,LinkList&hb,Lin{while(pa->next&&pb->nex}while(pb->next)pb=pb->ne}while(pa->next)pa=pa->ne}}{while(k<=len){q=q->next;}StatusDeleteAndInsertSub(LinkList&la{}}}}}}StatusListDelete_L(LinkList&L,ElemTypemink,E{while(p&&p->data<max}}}}voidListDelete_LSameNode(Li{}}}StatusListOppose_S{L.elem[i]=L.elem[L.le}}StatusListOppose_L({}}StatusListMerge_L(LinkList&A,LinkList&B,{}}StatusListMergeOppose_L(LinkList&A,LinkList&B,{}}}}}}StatusListCross_Sq(SqList&A,SqList&{while(i<A.length&&j<B.length){ListInsert_Sq(C,k,A}}}StatusListCross_L(LinkList&A,LinkList&B,{}}}}}}}StatusListCrossDelSame_Sq(SqList&A,SqList&{while(i<A.length&&j<B.length){ListInsert_Sq(C,k,A}ListInsert_Sq(C,k,A}}}}StatusListCrossDelSame_Sq(SqList&{while(i<A.length&&j<B.length){}}}}A.length=k;}StatusListCrossDelSame_L(LinkList&A,LinkList&B,{}}}}}}}}}StatusListCrossDelSame_L(LinkList&A,{}}}}}}}}}StatusListUnion_Sq(SqList&D,SqList&A,SqList&{}StatusListUnion_L(LinkList&A,LinkList&B,{}StatusListMinus_L(LinkList&A,{}}}}}}StatusListDelete_CL({}}StatusInitList_DL(Du{L=(DuLinkList)malloc(sizeof(}StatusListInsert_DL(DuLinkList&L,ElemTy{p=(DuLinkList)malloc(sizeof(D}StatusListCirToDu(Du{}}StatusListDivideInto3CL(LinkList&L,LinkList&s1,LinkList&s2,L{}}}}}StatusTraversingLinkList(XorLinkedList&L,ch{}}}}}//將雙向鏈表L=(a1,a2,...,an)改造為(a1,a3,.StatusListChange_DuL(Du{}}}DuLinkListListLocate_DuL(DuLinkList&L,ElemTypee){while(p!=L&&p->data!=e)while(q!=L&&q->freq>p->freq)q=q->ne}}}}0{L.data=(PolyTerm*)malloc(L.last*sizeof(P}}doublePolySum(SqPoly{}}StatusPolyMinus(SqPoly&L,SqPoly&L1{while(i<L1.last&&j<L2.last){}}p->coef=(p1->coef)-(p}}}while(i<L1.last){}while(j<L2.last){}}StatusPolyDifferential(Li{}p->data.coef=p->data.coef*p->datap->data.exp--;}}}StatusListDivideInto2CL(LinkedPoly&L,Lin{}}}}解:線性表是具有相同特性的數據元素的一個有限序列。棧是限定僅在表尾進行輸出序列中不可能出現這樣的情形:存在著i<j<k使pj<pk<pi。解:這個問題和3.1題比較相似。因為輸入序列是從小到大排列的,所以若p<p<p,則可以理jki解為通過輸入序列pjpjpkpi可以得到輸出序列pipjk3.1題。所以不可能存在著i<j<k使pj<pk<pi。#######AAIIK123456789cout<<i--;{}}{{}}{while(!StackEmpty(s}}{{}}{{}{}{}{}}}{if(top[1]>top[0])return*top[1]--;}}{}{while(s.top){s.size--;}}{while(s.top){s.size--;}}{}{}StatusGetTop(Stacks,{}}StatusPush(Stack&s,ElemTy{}StatusPop(Stack&s,{s.size--;}}//從棧頂到棧底用Visit()函數遍歷棧{}while(p)Visit(p->dat{cout<<"請輸入硬席(H)和軟席車廂(S)序列:";}}}}BOOLSymmetry(chara{while(a[i]!='&'&&a[i]){}}}}BOOLBracketCorrespondency(chara{}}}3.20假設以二維數組g(1…m,1…n)表示一個圖像區域,g[i,j]表示該區域中點(i,j)所具顏色,其值為voidCreateGDS(ElemTypevoidShowGraphArray(ElemTypevoidRegionFilling(ElemTypeg[M][N],PosTypeCurPos,int{RegionFilling(g,StartPos,F}voidRegionFilling(ElemTypeg[M][N],PosTypeCurPos,int{Push(s,g[CurPos.x][CurPoswhile(!StackEmpty(sg[CurPos.x][CurPos.y].g[CurPos.x+1][CurPos.y])Push(s,g[CurPos.x+1][CurPosg[CurPos.x-1][CurPos.y])Push(s,g[CurPos.x-1][CurPosg[CurPos.x][CurPos.y+1])Push(s,g[CurPos.x][CurPos.g[CurPos.x][CurPos.y-1])Push(s,g[CurPos.x][CurPo}}voidCreateGDS(ElemType{}}voidShowGraphArray(ElemType{}}voidInversePolandExpression(char{while(Buffer[i]!='#}}}}}while(!StackEmpty(s}}{}}{if(j==2)j--;if(j==4)j--;}charCalVal_InverPola{while(Buffer[i]!='#}}}}{}}#include"d:\VC99\DSStatusPush(Stack&s,ElemTStatusPop(Stack&s,ElemT{cout<<"請輸入逆波蘭算術表達式字符序列:";}{}}}}}}}}{}StatusPush(Stack&s,ElemTy{}StatusPop(Stack&s,ElemTy{}s.size--;}{}{}}{}{}303132338344052{}}doubleSqrt(doubleA,double{}doubleSqrt(doubleA,doublep,{}{}}{e.nval--;}}e.mval--;}}021620411610401021620411610akm=akm(m-1,1)=akm(0,021620411g=akm(m,n-1)=akm(1,0)=2;akm=akm702021620411g=akm(m,n-1)=akm(1,0)=2;akm=akm(m-1,g)=akm(0,021620akm=akm(m-1,1)=akm(1,021613612611610401021613612611610021613612611702021613612611021613612703021613612g=akm(1,1)=3;akm(m-1,g)=akm(0,3)=4613704021613021),{}StatusEnQueue(Queue&q,ElemTy{}}}StatusDeQueue(Queue&q,ElemTyp{}}q.size--;}{}StatusEnQueue(Queue&q,ElemTy{}}StatusDeQueue(Queue&q,ElemTyp{}}{}StatusEnQueue(Queue&q,ElemTy{if((q.rear+1)%MaxQSize==(q.rea}}StatusDeQueue(Queue&q,ElemTyp{e=q.base[(q.rear+MaxQSize-qq.length--;}}StatusSymmetryString{}while(!StackEmpty(s}}{}}}}returnq.base[(q.rear+q.MaxSize-1)%q}{}StatusEnDQueue(DQueue&q,ElemTy{if(q.front==q.rear&&}if(e<(q.base[q.front]+q.base[(q.reaq.front=(q.front+q.MaxSiz}}}}StatusDeDQueue(DQueue&q,ElemTyp{}}//Filename:XT333.cpp主{while(dq.front!=dq.rear||dq.tag){}}{cout<<"請輸入待調度的車廂字符序列if(ch[i]=='S')EnDQueueif(ch[i]=='H')EnDQueue}while(dq.front!=dq.rear||dq.tag){}}Concat(t,SubString(s3,1,5),SubStrinString::String(constSt{}{}{}{}voidString::StrAssign(String{}{}{}voidString::Concat(String{}{}}{}{}j≤1){}{}{}{}{}{}voidRRMove(ElemTypeA[],intk{}}}voidInitialize(NodeTypea[RS][CS],ElemTypevoidSaddlePoint(NodeTypeaElemTypeRowMin(NodeTypea[RS][CS],iElemTypeColMax(NodeTypea[RS][CS],ivoidShow(NodeTypea{}voidInitialize(NodeTypea[RS][CS],ElemType{}}}voidSaddlePoint(NodeType{}}}ElemTypeRowMin(NodeTypea[RS][CS],i{}}ElemTypeColMax(NodeTypea[RS][CS],i{}}voidShow(NodeType{}BOOLoperator<(TripleBOOLoperator==(TripleBOOLTriple::operator<(Triple{}BOOLTriple::operator==(Triple{}{CSparseMatoperator+(CSpars{m_pt=newTriple[m_nm_pt[i].row=dlg1.m_m_pt[i].col=dlg1.m_}}}voidCSparseMat::ShowSparse({}pDC->TextOut(0+j*20,0+i*20,str,strl}}}CSparseMatCSparseMat::operator+(CSpar{CSparseMattemp(m_nRow,temp.m_pt=newTriplwhile(i<m_nTrs&&j<B.m_nTr}temp.m_pt[k].e=m_pt[i].e+B.}}}}}}}{Twin*m_pt;//指向非零元的指針{cout<<"請輸入非零元二元組的列標和值:";cin>>m_pt[i].col>>m}cout<<"請輸入每行第一個非零元在二元組中的序號}}{}}}}}}}{}{OLink*RHead,*CHead;CCrossListMat(intr,intc,{}while(q&&q->col<p->co}}OLink*RHead,*CHead;}while(q&&q->row<p->ro}}}}{}{CCrossListMat(intr,intc,{}while(q&&q->col<p->co}}}while(q&&q->row<p->ro}}}}voidCCrossListMat::Add(CCrossL{while(pa&&pa->col<pb->co}}}}}}}}}{}cout<<0<<"";}}}{CCrossListMatA(3,3,4)}AtomTypeatom;intStrDistrict(CString&St{elseif(!s1.StrCompare(s4))k--;}HStr=Str.SubString(1TStr=Str.SubString(}}}{CStringSub,HSub,TSub;Sub=s.SubString(2,s.StrLeng}}}}}}{}}}}{HDepth=Depth+GListDepth(LTDepth=Depth+GListDeptreturnHDepth>TDepth?HDep}}{}}}StatusGListCompare(GList&L1,{}GListCompare(L1->tp}}}}解:根據樹的定義,在一顆樹中,除樹根結點外,每個結點有且僅有一個前驅結結點與指向它的一個分支一一對應,所以除樹根結點之外的結點樹等于所i=10ii=1(l21)(lp1)pp(l21)(lp11)(l21)(lp1)空間,則當mk<n(k+12)時,即時,采用順序存儲比采用三叉A0203B0405C0616D1215E0708F1309G00H113I01J01K10L1910M11N118while(!r->ltag)r=r->lchiGFKDAIEBCHJ為所求二叉樹的先序序列,DIAEKFCJHBG為二叉樹的中序序列。通過觀察先序序列,GG(F(K(DIAE,NULL),B(CJH,NULL)G(F(K(D(NULL,IAE),NULL),B(C(NULL,JH),NULL)G(F(K(D(NULL,A(I,E)),NULL),B(C(NULL,H(J,NULL)),NULL)樹樹A:1101B:01C:11111D:1110E:10F:11110G:00H:{}}}}}}{}}}}}}{}charT[N]={'0','a','b','c',{cout<<"請輸入結點的值:";}{}}{}{}StatusSimilarTree(BiTree&T1,{}&&SimilarTree(T1->rchild,T2->rch}}}{while(p||!StackEmpty(s}}StatusPONodeK(TElemType{}}}StatusPOLeafNodeNum(int&i,B{POLeafNodeNum(i,T->POLeafNodeNum(i,T->}}StatusExchangeBiTree(B{}}StatusChildTreeDepth(BiTree&T,TElemTypex,i{}}StatusPreOrderLocate(BiTree&T,TElemType{}}}}}{}}StatusDelChildTree(BiTree&T,TEle{}}}}}{}}StatusCopyBiTree(BiTree&T,{CopyBiTree(T->lchild,T1CopyBiTree(T->rchild,T1}}}#include"c:\Yin\inclu{while(!QueueEmpty(q}}StatusMinComAncst(BiTree&T,TElemType&e,TElemType*p,TEl{while(T1&&T2&&T1->data==T2->dat}}}}}}StatusPathTree(BiTree&T,TEl{}}}}}StatusCompleteBiTree(B{d=BiTDepth(T->lchild)-BiTCompleteBiTree(T->rchild))ret}}}StatusShowBiTExpress(B{}}}}}}{}{InitStack(s1);InitStack(}while(!StackEmpty(s1}}while(!StackEmpty(s2}}}}}StatusMaxPathBiTree(B{MaxPathBiTree(T->lchiMaxPathBiTree(T->rchi}}StatusLMaxPathBiTree(B{}}}}StatusCreateCompleteBiTree(SqList<TElemType>&ST,B{while(!QueueEmpty(q)&&i<len-p->lchild->data=ST.}p->rchild->data=ST.}}}StatusPreOrderTraverse(B{PreOrderTraverse(T->PreOrderTraverse(T->}}{}
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論