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

正文內(nèi)容

c語言程序設計與項目實踐第18章-wenkub

2023-01-24 01:07:18 本頁面
 

【正文】 :數(shù)值運算算法和非數(shù)值運算算法。loop100。數(shù)學運算中,可以使用和差算法計算這樣的加和運算,公式為: sum = n*(a1+an)/2 使用 C語言實現(xiàn)的程序為: 01 int sum = 0。在這些算法的理論設計中,有時需要用到某些數(shù)學模型,通常稱為數(shù)據(jù)結構。對于人員姓名,可以按照首字母前后順序排序,也可以按照姓名長度排序等等。 2 7 96 1 68 8 89 4 85 2 18 58 56 1 68 8 89 4 85 2 12 7 99 4 86 1 68 8 88 55 2 12 7 99 4 86 1 68 8 85 2 18 52 7 99 4 88 58 8 85 2 16 1 62 7 99 4 88 8 88 55 2 16 1 62 7 9第一次交換第三次交換第一趟交換結果第四次交換第五次交換第六次交換 起泡排序 在第一趟數(shù)據(jù)比較的基礎上,繼續(xù)進行第二趟數(shù)據(jù)比較。其一般表達函數(shù)為: 01 void BubbleSort(dataList r[], int n) 02 { 03 int loop1, loop2, temp。loop2=loop1+1。 13 } 14 } 15 } 16 } 起泡排序 ? 范例 設計一段起泡排序算法的排序程序,將下面幾個國家到 2022年為止打入世界杯決賽圈的次數(shù),按從大到小排列,相同次數(shù)的隨機排列。 1 87 7 8 84 5361 87 7 8 84 5361 87 7 8 84 5361 87 7 8 84 5631 87 7 8 84 5631 87 734 56 8 8第一次比較第二次比較第一趟交換結果第一次交換第四次比較第二次交換 選擇排序 經(jīng)過第四趟排序之后,數(shù)值 18被交換到第四的位置,此時數(shù)據(jù)序列順序為 {88,30,6,18,77,45}。loop1=len1。 11 array[loop1]=array[loop2]。最簡單的合并是將兩個有序數(shù)組合并成一個有序數(shù)組。使用 2路合并排序算法,可以將無序序列排列成有序序列, 遞歸形式的 2路合并排序方法基本思想:將含有 n個元素的待排序序列分為 n個子序列,然后,兩兩進行合并,得到 n/2或 n/2+1個含有 2個元素的子序列,將這些子序列再兩兩合并,直到生成一個長度為 n的有序序列為止。 07 MergeSort(array, firstIndex, midIndex)。 例如,有無序序列 {a1, a2, a3, a4, …… , an},使用快速排序的過程為: 首先,任選一個數(shù)據(jù)(通常選第一個元素數(shù)據(jù) a1)作為關鍵數(shù)據(jù)。所謂查找,就是要在一組數(shù)據(jù)中找出某個特定的元素,若找到,則執(zhí)行某種預定的動作,若未找到,則輸出提示信息,并執(zhí)行相應的操作。 例如,有數(shù)組 array[10]={101, 80, 96, 11458, , 495, 6174, 705, 56, },要在該數(shù)組中查找關鍵元素 key=56,并返回其數(shù)組下標位置。 i++) //遍歷待查找數(shù)組 02 { 03 if(array[i]= =key) //關鍵參數(shù)比較與判斷 04 { 05 break。 折半查找算法 折半查找的基本思想為:首先,將待查找的有序序列中間位置元素與要查找的關鍵元素比較,如果兩者相等,則查找成功,否則,利用中間位置的記錄將序列分成前、后兩個子序列,若中間位置元素大于要查找的關鍵元素,則進一步查找前一子序列,否則進一步查找后一子序列。 //選擇中間位置 07 if(KeyParameter= = InputTable[mid]) //判斷是否查找到所需元素 08 { 09 return mid。 21 } 二叉樹 二叉樹是數(shù)據(jù)結構的典型代表之一,它是一類非常重要的非線性數(shù)據(jù)結構。每個結點表示實際應用中的一個數(shù)據(jù)元素。如圖所示為幾種不同的二叉樹結構。 P a r e n t F i e l d D a t a F i e l d L e f t C h i l d R i g h t C h i l d 可以使用結構體定義上述二叉樹結點,定義格式如下: 01 struct TreeNode 02 { 03 struct TreeNode *parent。 //指向右孩子結點 07 }BinaryTreeNode。 上述代碼定義了一個 TreeNode類型的結構體數(shù)組 BinTree,用于構建含有 100個結點的二叉樹。結構體數(shù)組 InBinTree各元素與二叉樹結點的對應關系如圖所示。 07 } 08 else 09 { 10 printf(“二叉樹不為空 \n”)。采用先序遍歷算法,各結點的先后遍歷順序為: ABDECFG。 //訪問根結點 11 preOrderTreversingTree(InBinTreeleftchild)。其基本規(guī)則為:中序遍歷左子樹,遍歷根結點,中序遍歷右子樹。//中序遍歷左子樹 11 printf( %d, InBinTreedata)。其基本規(guī)則為:后序遍歷左子樹,后序遍歷右子樹,遍歷根結點。 //后序遍歷左子樹 11 LastOrderTreversingTree (InBinTreerightchild)。使用遞歸算法,代碼如下: 01 struct TreeNode *SearchBinTree(struct TreeNode *InBinTree, int Indata) 02 { 03 struct TreeNode *pTree=NULL。 09 } 10 else 11 { 12 if(InBinTreedata
點擊復制文檔內(nèi)容
法律信息相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1