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

新东方研学网站那家公司做的微信小程序制作开发平台

新东方研学网站那家公司做的,微信小程序制作开发平台,商贸公司寮步网站建设,前端开发培训要多少钱概念#xff1a; 堆排序是一种基于二叉堆数据结构的排序算法。它的概念是通过将待排序的元素构建成一个二叉堆#xff0c;然后通过不断地取出堆顶元素并重新调整堆的结构来实现排序。 算法步骤#xff1a; 构建最大堆#xff08;或最小堆#xff09;#xff1a;将待排…概念 堆排序是一种基于二叉堆数据结构的排序算法。它的概念是通过将待排序的元素构建成一个二叉堆然后通过不断地取出堆顶元素并重新调整堆的结构来实现排序。 算法步骤 构建最大堆或最小堆将待排序的元素构建成一个二叉堆。最大堆的特点是父节点的值大于其子节点的值最小堆的特点是父节点的值小于其子节点的值。交换堆顶元素和最后一个元素将堆顶元素与堆中最后一个元素交换位置然后将堆的大小减1。调整堆结构对交换后的堆顶元素进行调整使其满足堆的性质。重复步骤2和步骤3直到堆的大小为1。 算法特点 堆排序是一种原地排序算法不需要额外的存储空间。时间复杂度为O(nlogn)其中n是待排序元素的个数。不稳定排序算法可能改变相同值的元素的相对顺序。 优点 相对于其他排序算法堆排序的常数因子较小因此在大规模数据的排序中表现较好。由于堆排序的每一次交换都是跨越较大的距离因此对于顺序存储的数据堆排序的缓存命中率较高。 缺点 堆排序的主要缺点是在排序过程中需要频繁地进行元素的比较和交换因此相对于其他排序算法它的性能较差。不适合对于小规模数据的排序。 适用场景 堆排序适用于大规模数据的排序尤其是外部排序数据量无法一次性装入内存的情况下。由于堆排序对数据的随机访问较多因此在数据的存储方式为顺序存储时堆排序的性能较好。 实现代码 public class HeapSort {public static void heapSort(int[] arr) {int n arr.length;// 构建最大堆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);}}// 调整堆结构public static void heapify(int[] arr, int n, int i) {int largest i; // 初始化最大值为当前节点int left 2 * i 1; // 左子节点int right 2 * i 2; // 右子节点// 如果左子节点大于最大值则更新最大值if (left n arr[left] arr[largest]) {largest left;}// 如果右子节点大于最大值则更新最大值if (right n arr[right] arr[largest]) {largest right;}// 如果最大值不是当前节点则交换节点位置并继续调整堆结构if (largest ! i) {int temp arr[i];arr[i] arr[largest];arr[largest] temp;heapify(arr, n, largest);}}public static void main(String[] args) {int[] arr { 4, 10, 3, 5, 1, 11, 33, 7, 12, 9 }};heapSort(arr);System.out.println(排序结果);for (int num : arr) {System.out.print(num );}} }
http://www.pierceye.com/news/931246/

相关文章:

  • 下载官方网站合肥建站公司seo
  • 做网站还是做app好科技部政服务服平台
  • 东阿聊城做网站的公司seo顾问培训
  • 临海高端营销型网站建设地址建设网站有什么要素构成
  • wordpress 照片分享昌平网站建设推广优化seo
  • 石家庄做网站的公司有哪些做企业网站一般要多少钱
  • 电脑十大免费游戏网站万能搜索引擎入口
  • 菏泽网站建设公司排名有没有专做推广小说的网站
  • 东莞网站建设搭建因酷网站建设
  • 连云港百度推广网站建设ph域名网站
  • 网站建设营销模板网站开发招聘职位
  • 如何做网站的教程网站怎么建设以及维护
  • 信息港发布信息怎么做网站优化
  • 网页广告怎么关闭网站seo的主要优化内容
  • server2012做网站免费的图片做视频在线观看网站
  • 石狮网站建设折扣网站模板
  • 大连商城网站制作公司深圳网站改版公司
  • 网站备案需要的资料网站+做内容分发资格
  • 青岛模板自助建站百度怎么搜索图片
  • 国外做动运服装的网站安徽海通建设集团网站
  • 手机网站加百度商桥装修公司加盟免费
  • 网站开发背景知识wordpress第二步500
  • 114百事通做网站600郑州建站时间
  • 佛山网站建设科技公司南宁网页设计价格
  • 四字母net做网站怎么样如何开通微信小程序商城
  • 山西免费网站关键词优化排名婚恋网站开发
  • seo查询站长手机app制作网站模板
  • 微网站O2O平台平台开发怎么申请免费的网站
  • 加强网站互动交流平台建设自查p2p网站建设制作
  • 泉州网站建设平台成都百度seo公司