当前位置: 首页 > news >正文

苏州做网站设计的公司有哪些百度上做广告怎么收费

苏州做网站设计的公司有哪些,百度上做广告怎么收费,做网站的公司都是小公司,网银在线北京网络科技有限公司堆排序(Heapsort)是一种在时间复杂度上达到了最优的基于比较的排序算法。堆排序算法是指利用堆这种数据结构所设计的一种排序算法。堆积是一个近似完全二叉树的结构,并同时满足堆积的性质:即子节点的键值或索引总是小于&#xff0…

 

堆排序(Heapsort)是一种在时间复杂度上达到了最优的基于比较的排序算法。堆排序算法是指利用堆这种数据结构所设计的一种排序算法。堆积是一个近似完全二叉树的结构,并同时满足堆积的性质:即子节点的键值或索引总是小于(或者大于)它的父节点。

堆排序的基本思想是:

  1. 首先将待排序的序列构造成一个大顶堆(或小顶堆)。
  2. 此时,整个序列的最大值(或最小值)就是堆顶的根节点。
  3. 将其与末尾元素进行交换,此时末尾就为最大值(或最小值)。
  4. 然后将剩余n-1个元素重新构造成一个堆,这样会得到n个元素的次小值(或次大值)。
  5. 如此反复执行,便能得到一个有序序列了。

堆排序的时间复杂度是O(n log n)。

#include <stdio.h>  // 将以k为根的子树调整为最大堆  
void heapify(int arr[], int n, int k) {  int largest = k;  // 初始化根节点最大  int left = 2 * k + 1;  // 左子节点  int right = 2 * k + 2;  // 右子节点  // 如果左子节点比根节点大,则更新最大节点  if (left < n && arr[left] > arr[largest]) {  largest = left;  }  // 如果右子节点比最大节点大,则更新最大节点  if (right < n && arr[right] > arr[largest]) {  largest = right;  }  // 如果最大节点不是根节点,则交换根节点和最大节点,并继续调整子树  if (largest != k) {  int temp = arr[k];  arr[k] = arr[largest];  arr[largest] = temp;  heapify(arr, n, largest);  }  
}  // 堆排序函数  
void heapSort(int arr[], int n) {  // 构建最大堆  for (int i = n / 2 - 1; i >= 0; i--) {  heapify(arr, n, i);  }  // 从堆顶开始取出元素,并重新调整堆  for (int i = n - 1; i >= 0; i--) {  int temp = arr[0];  arr[0] = arr[i];  arr[i] = temp;  heapify(arr, i, 0);  }  
}  int main() {  int arr[] = {10, 7, 8, 9, 1, 5};  int n = sizeof(arr) / sizeof(arr[0]);  printf("Original array: ");  for (int i = 0; i < n; i++) {  printf("%d ", arr[i]);  }  printf("\n");  heapSort(arr, n);  printf("Sorted array: ");  for (int i = 0; i < n; i++) {  printf("%d ", arr[i]);  }  printf("\n");  return 0;  
}

该代码中,heapify函数将以k为根的子树调整为最大堆,heapSort函数则先构建最大堆,然后从堆顶开始取出元素并重新调整堆,最终得到排序后的数组。

http://www.ds6.com.cn/news/109762.html

相关文章:

  • 用flash做的ppt模板下载网站长春seo网站排名
  • macbook air网站开发搜索关键词排名一般按照什么收费
  • 网站开发需要java吗模板建站优点
  • 网站内容营销无锡seo培训
  • 如何用ps做网站首页图片网页设计收费标准
  • 网站手机页面如何做新闻头条最新消息10条
  • 如何评价一个企业的网站建设火星时代教育培训机构官网
  • 关于动漫制作专业宁波seo外包
  • 滨州网站建设公司电话自贡网站seo
  • 制作收款网站搜索引擎优化怎么做
  • 做网站用多大的服务器苏州网站开发公司
  • 网站为什么要备案品牌营销服务
  • 做网站的企业文化怎么写优化大师的三大功能
  • wordpress 插入 flash青岛自动seo
  • 深圳网站建设公司 评论培训方案怎么做
  • 2023疫情最新数据消息唐山seo优化
  • 做下载网站有哪些seo和sem推广
  • 中国目前哪里在大建设快速排名生客seo
  • jsp如何做动态网站整站优化网站
  • 一般全包装修多少钱seo网站优化培训厂家报价
  • 徐州睢宁建设网站如何做网络营销?
  • 工信部网站备案查询系统北京做网站推广
  • 黄埭做网站免费外链网站seo发布
  • 景区网站建设费用长沙百度快照优化排名
  • 中央疫情防控最新政策青岛神马排名优化
  • 中英西班牙网站建设seo专员是干什么的
  • 公司创建一个网站多少钱数据平台
  • 网站建设公司怎么赚钱搜索引擎优化实验报告
  • 计算机科学与技术网站网站设计公司报价
  • 网站弹出广告的是怎么做的小黄豆crm