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

正文內(nèi)容

數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)報(bào)告冊合集(參考版)

2024-10-20 03:48本頁面
  

【正文】 修改程序前兩個(gè)運(yùn)行結(jié)果截圖(兩個(gè)程序,調(diào)試運(yùn)行兩次,每次只能進(jìn)行一次排序)快速排序程序運(yùn)行結(jié)果截圖:折半插入排序程序結(jié)果截圖:程序重要模塊修改截圖:修改程序后運(yùn)行截圖:(一個(gè)程序,調(diào)試運(yùn)行一次,可多次進(jìn)行不同序列的不同排序)。運(yùn)行程序錯(cuò)誤截圖:本來我是編寫了兩個(gè)程序,分別實(shí)現(xiàn)快速排序和折半插入排序的功能,但我后來想我是否可以將其合二為一,于是我想到用if選擇語句用來實(shí)現(xiàn)不同的功能,從鍵盤輸入功能選項(xiàng)m,if(m==1),可以進(jìn)行快速排序,if(m==2),可以進(jìn)行折半插入排序,于是我繼續(xù)思考,我是否可以在一次運(yùn)行程序中,多次對(duì)含有不同元素的序列進(jìn)行排序,于是我用了goto語句,每次排序一次后,自動(dòng)循環(huán)到選擇語句,當(dāng)不需要在排序的時(shí)候,可以從鍵盤輸入3,退出程序,這樣一來,程序變得更加實(shí)用和清晰明朗。L, int low, int high)快速排序middlesort(Sequenlist *L)折半插入排序五、程序運(yùn)行結(jié)果下圖僅為分別排序一次,可多次排序,后面有相關(guān)截圖:六、實(shí)驗(yàn)中遇到的問題、解決及體會(huì)起初編寫快速排序的程序時(shí),我是完全按照老師PPT上的算法敲上去的,然后建立了一個(gè)SqList的結(jié)構(gòu)體,調(diào)試運(yùn)行時(shí)出現(xiàn)錯(cuò)誤,仔細(xì)查看才意識(shí)到Partition函數(shù)中L中應(yīng)該包含元素key,而我建立結(jié)構(gòu)體時(shí)沒有注意,然后我將key這個(gè)元素補(bǔ)充進(jìn)去,繼續(xù)調(diào)試,又出現(xiàn)錯(cuò)誤,提示我Partition沒有定義,我就覺得很奇怪,我明明已經(jīng)寫了函數(shù)定義,為什么會(huì)這樣,當(dāng)我又回過頭來閱讀程序時(shí),我發(fā)現(xiàn)QuickSort函數(shù)中調(diào)用了Partition函數(shù),但是我的Partition函數(shù)的定義在QuickSort函數(shù)的后面,于是我將Partition函數(shù)放到了QuickSort函數(shù)的前面,再次調(diào)試運(yùn)行,就可以正常運(yùn)行,得出結(jié)果了。cout四、重要函數(shù)功能說明Sequenlist *Sqlset()輸入要折半插入排序的一組元素int Partition(SqList amp。i++){coutdata[i]}coutcoutgoto gg。coutfor(i=1。L=Sqlset()。j{cout}coutcout}if(m==2){Sequenlist *L。} coutQuickSort(L,1,)。coutn。coutif(m==1){ SqList L。//插入 } return 0。j){ Ldata[j]=Ldata[j1]。//插入點(diǎn)在后半?yún)^(qū)}for(j=i。if(Ldata[0]data[mid])high=mid1。high=i1。i++){Ldata[0]=Ldata[i]。for(i=1。}return(L)。Llastlast++)cinLdata[Llast]。coutcini。L=(Sequenlist *)malloc(sizeof(Sequenlist))。//對(duì)右序列同樣遞歸處理} }Sequenlist *Sqlset()//2 輸入要折半插入排序的一組元素{Sequenlist *L。//尋找基準(zhǔn)QuickSort(L, low, pivotloc1)。}void QuickSort(SqList amp。//大于基準(zhǔn)對(duì)象的移到區(qū)間的右側(cè) }[low] = [0]。[low] = [high]。//子表的第一個(gè)記錄作基準(zhǔn)對(duì)象int pivotkey = [low].key。//2 折半插入排序的結(jié)構(gòu)體int Partition(SqList amp。int last。}SqList。typedef struct { RedType r[100]。include “”typedef struct { int key。了解各種方法的排序過程及其依據(jù)的原則,并掌握各種排序方法的時(shí)間復(fù)雜度的分析方法。第五篇:數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)報(bào)告4 排序一、實(shí)驗(yàn)?zāi)康恼莆粘S玫呐判蚍椒?,并掌握用高?jí)語言實(shí)現(xiàn)排序算法的方法。遞歸遍歷的實(shí)現(xiàn)比非遞歸的遍歷真的簡單很多。樹狀圖形輸出還是不美觀,還需要改進(jìn)。所以數(shù)據(jù)量越大的時(shí)候,二叉樹的查找效率越高。case 4: cout二叉排序樹儲(chǔ)存數(shù)據(jù)界面(儲(chǔ)存學(xué)生信息略)創(chuàng)建二叉樹:插入節(jié)點(diǎn):刪除節(jié)點(diǎn):非遞歸遍歷:退出:數(shù)組儲(chǔ)存學(xué)生信息界面分析查找效率:因?yàn)槎鏄洳檎乙獎(jiǎng)?chuàng)建二叉樹,而數(shù)組查找只創(chuàng)建一個(gè)數(shù)組,二叉樹的創(chuàng)建時(shí)間比較長,所以對(duì)于數(shù)據(jù)量較少的情況下數(shù)組的查找效率比較高。}}ptr[m].show()。ptr[m]=ptr[n]。nif(ptr[m].average()student a。case 3: for(m=1。ptr[k].set(q,w,e,r)。coute。} coutq。coutk。if(i==j){ coutj。} void student::show(){ coutint main(){ coutnumlock。ob2=d。name=b。}。void show()。intara。int ob1。class student{ private: intnum。} elsereturn 0。} else if(nono){ InsertBST(TlChild,no,score,name)。TlChild=TrChild=NULL。Tname=name。T,intno,intscore,string name){//插入二叉樹函數(shù)if(T==NULL){T =(BiTree)malloc(sizeof(BiTNode))。//左右子樹域 }BiTNode, *BiTree。ElemType no。//返回值類型 //定義二叉樹結(jié)構(gòu) typedefstructBiTNode{ SlemType name。//數(shù)據(jù)類型 typedefstring SlemType。} return 0。return 0。break。printf(“樹狀圖為:n”)。printf(“后序遍歷:n”)。printf(“中序遍歷:n”)。printf(“先序遍歷:n”)。break。case 3: layer=PosttreeDepth(bst)。printtree(bst,layer)。printf(“刪除成功!”)。K)。case 2:}printf(“輸入要?jiǎng)h除的節(jié)點(diǎn)”)。printtree(bst,layer)。printf(“插入成功!”)。T)。switch(j){case 1:printf(“輸入要插入的節(jié)點(diǎn):”)。scanf(“%d”,amp。printf(“n”)。){ loop: printf(“n”)。int K。int j。printf(“樹狀圖為:n”)。printf(“n”)。printf(“n”)。iscanf(“%d”,arr+i)。int *arr=(int*)malloc(num*sizeof(int))。num)。printf(“輸入節(jié)點(diǎn)個(gè)數(shù):”)。inti。printf(“n”)。} } printf(“n”)。p=NULL。num。}p=stack[num1]。while(NULL!=p||num0){while(NULL!=p){stack[num++]=p。intnum=0。void PostOrderNoRec(BiTree root)//后序非遞歸遍歷 { BiTree p=root。p=prChild。p=stack[num]。p=plChild。BiTreestack[50]。} void InOrderNoRec(BiTree root)//中序非遞歸遍歷 { BiTree p=root。p=prChild。}num。stack[num++]=p。intnum=0。} void PreOrderNoRec(BiTree root)//先序非遞歸遍歷 { BiTree p=root。} printf(“%dn”,Tdata)。for(inti=0。} void printtree(BiTreeT,intnlayer){//打印二叉樹 if(T==NULL)return。return max+1。hr=PosttreeDepth(TrChild)。} } } intPosttreeDepth(BiTree T){//求深度inthr,hl,max。else{if(keydata)returnDeleteBST(TlChild,key)。T,int key){ if(!T)return 0。} } return 1。elseqlChild=slChild。}(T)data=sdata。while(srChild){q=s。}else{ q=T。}else{if(!(T)lChild){ //若左子樹空則重新接它的右子樹q=T。T=(T)lChild。T){BiTreeq,s。} returnbst。while(i//數(shù)據(jù)域InsertBST(bst,a[i])。} BiTreeCreateBST(int a[],int n){//創(chuàng)建二叉樹函數(shù) BiTreebst=NULL。} else if(keyTdata){InsertBST(TrCh
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1