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

正文內(nèi)容

datastructureinc樹狀結(jié)構(gòu)-免費(fèi)閱讀

  

【正文】 else { temp[index_temp/2] = temp[index_temp]。 else /* 替代資料小於其 CHILDEN NODE, 則往下調(diào)整 */ adjust_d(heap_tree, index_temp, last_index1)。 c_index = MAX。 scanf(%d, amp。 } } void exchange(int *id1, int *id2) /* 交換傳來(lái)之 ID1及 ID2儲(chǔ)存之資料 */ { int id_temp。 /* 建立堆積 */ printf( Login successfully!!\n)。 } } 刪除節(jié)點(diǎn)於非樹葉節(jié)點(diǎn)的左右方 45 堆積 ? 堆積 (heap) ? 定義:堆積是一棵二元樹,其樹根的鍵值大於子樹的鍵值,且必須符合完整二元樹 ? 不管左子樹和右子樹的大小順序 (與二元搜尋樹最大的差異 ) ? Heap可用於排序上,簡(jiǎn)稱 Heap Sort ? 在一堆雜亂無(wú)章的資料中,利用 heap sort將它由小至大或由大至小排序皆可 ? 首先,將一堆資料利用完整二元樹將其建立起來(lái),再將它調(diào)整為 Heap, 爾後再依題意用 Stack(由大到小 )或 Queue(由小至大 )輔助之 ? Heap的調(diào)整 ? 由上而下 ? 從樹根開始到 ,分別與其子節(jié)點(diǎn)相比,若前者大則不用交換。 } else /*刪除一分支度節(jié)點(diǎn) */ { if ( ptr_parent == root ) /*刪除第一節(jié)點(diǎn) */ { if ( ptrlbit == 1 ) { ptr_pred = inpred(ptr)。 } free(ptr)。132… if ( ptrlbit == 0 amp。 node_parentlchild = node。 node_parentrbit = 1。 } return NULL。) /* link為 l */ parentrlink = nodellink。l39。 re_noderlink != NULL) re_node = re_noderlink。 while(re_node != NULL amp。 else /* 當(dāng)替代節(jié)點(diǎn)為樹葉節(jié)點(diǎn)的狀況 */ connect(re_node, 39。 } /* 尋找刪除非樹葉節(jié)點(diǎn)的替代節(jié)點(diǎn) */ struct student *replace(struct student *node) { struct student *re_node。 return。 } } /* 搜尋 target所在節(jié)點(diǎn) */ struct student *search(char target[]) { struct student *node。 ptrllink = ptrrlink = NULL。 postorder(treerlink)。 }。 AB CD E F GH I J K13 二元樹 (續(xù) ) ? 二元樹追蹤 (traversal) ? 即走訪樹中的每一個(gè)節(jié)點(diǎn),且每個(gè)節(jié)點(diǎn)恰好被尋訪一次 ? 追蹤方式: ? 中序追蹤 (inorder): 先拜訪左子樹 (L: 向左移動(dòng) ),然後拜訪節(jié)點(diǎn) (V: 例如,列印資料 ),再拜訪右子樹 (R:向右移動(dòng) ) ? 前序追蹤 (preorder): 先拜訪節(jié)點(diǎn) (V) , 然後拜訪左子樹 (L) ,再拜訪右子樹 (R) ? 後序追蹤 (postorder): 先拜訪左子樹 (L) , 然後拜訪右子樹 (R) ,再拜訪節(jié)點(diǎn) (V) +CBD%E*A/中序追蹤: A/B%C*D+E 前序追蹤: +*/A%BCDE 後序追蹤: ABC%/D*E+ void inorder(Node type *tree) { if (tree != NULL){ inorder(treellink)。 printf(“%d”, treedata)。 if(root == NULL) /* 當(dāng)根節(jié)點(diǎn)為 NULL的狀況 */ root = ptr。 node = root。 } /* 節(jié)點(diǎn)不為樹葉節(jié)點(diǎn)的狀況 */ if(del_nodellink != NULL || del_noderlink != NULL) del_node = replace(del_node)。 /* 當(dāng)右子樹找不到替代節(jié)點(diǎn),會(huì)搜尋左子樹是否存在替代節(jié)點(diǎn) */ if((re_node = search_re_r(noderlink)) == NULL) re_node = search_re_l(nodellink)。n39。amp。 return re_node。) /* link為 l */ parentllink = nodellink。 else /* link為 m */ parentrlink = NULL。 } 34 二元搜尋樹 (續(xù) ) ? 利用二元搜尋樹來(lái)排序一組資料 ? 步驟: ? 先將輸入資料置於一個(gè) queue中 ? 以第一個(gè)資料當(dāng)做二元樹的樹根 ? 以後的資料與樹根比較,若小於則成為樹根之左子樹,若大於則為其右子樹,如此一直遞迴式的進(jìn)行 ? 建立完畢後再以中序法追蹤 ? 若要由小而大排序,則將結(jié)果直接輸出。 if ( noderbit == 1 ) /*node底下還有 tree*/ { w = insucc( node )。 node_parentlbit = 1。amp。 } 刪除節(jié)點(diǎn)於樹葉節(jié)點(diǎn)的左右方 else if ( ptrlbit == 1 amp。 rootlchild = ptrlchild。反之,則要交換 ? 讓子節(jié)點(diǎn)先比,找出最大者再與父節(jié)點(diǎn)比 ? ?2/n30231512 3換30152312 3換23153012 330231512 3 15233012 347 堆積 (續(xù) ) ? Heap的加入 408102315 30408102315 30408302315 10408302315 1050408302315 1050408502315 1030508402315 103
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1