C語言實現推排序

來源:互聯網
上載者:User

標籤:ret   單線程   i++   system   otp   max   stdio.h   for   logs   

KeyPoint : 找到關鍵的父節點

     單線程找最大值 最快的方法

#include "stdlib.h"#include "stdio.h"void findMax(int *arr, int size) {int totParent = size / 2 - 1;for (;totParent >= 0;totParent--){int parent = totParent;int child = 2 * totParent + 1;if (child < size - 1 && arr[child] < arr[child + 1]){child++;}if (arr[parent] < arr[child]){int tmp = arr[child];arr[child] = arr[parent];arr[parent] = tmp;}}}void printArr(int *arr, int length){for (int i = 0;i < length;i++){printf("%d   ",arr[i]);}printf("\n");}void sortArr(int *arr, int length){for (int i = 0;i < length - 1;i++){findMax(arr + i, length - i);printArr(arr + i, length - i);}}int main(){int arr[10] = { 0,2,87,49,34,62,53,6,44,90 };int length = sizeof(arr)/sizeof(int);sortArr(arr, length);printArr(arr, length);system("pause");return 0;}

  

C語言實現推排序

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.