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

阿里云可以做网站么网络推广自学

阿里云可以做网站么,网络推广自学,做淘宝客网站好搭建吗?,网站制作教程下载目录 大小堆 堆的实现 堆的创建 堆的销毁 交换 向上调整 向下调整 弹出首个元素 取出首个元素 判空 堆插入 大小堆 大堆:最上面的数字是最小的,越往下越大 小堆:最上面的数字是最大的,越往下越小 堆的复杂程度&#…

目录

大小堆

堆的实现

堆的创建

堆的销毁

交换

向上调整

向下调整

弹出首个元素

取出首个元素

判空

堆插入


大小堆

大堆:最上面的数字是最小的,越往下越大

小堆:最上面的数字是最大的,越往下越小

堆的复杂程度:

由错位相减我们可以知道T(n)= n - log(n-1) = n,所以建堆的复杂程度为O(N)

堆的实现

堆的创建

void HPInit(HP* php)
{assert(php);php->a = NULL;php->size = php->capacity = 0;
}

堆的销毁

void HPDestroy(HP* php)
{assert(php);free(php->a);php->a = NULL;php->size = php->capacity = 0;
}

交换


void Swap(HPDataType* p1, HPDataType* p2)
{HPDataType tmp = *p1;*p1 = *p2;*p2 = tmp;
}

向上调整


void Adjustup(HPDataType* a, int child)
{int parent = (child - 1) / 2;while (child > 0){if (a[child] < a[parent]){Swap(&a[child], &a[parent]);child = parent;int parent = (child - 1) / 2;}else{break;}}
}

向下调整

void AdjustDown(HPDataType* a, int n, int parent)
{int child = parent * 2 + 1;while (child < n){if (child + 1 < n && a[child] > a[child + 1])//先假设左孩子是小的{child++;}if (a[child] < a[parent]){Swap(&a[child], &a[parent]);parent = child;child = parent * 2 + 1;}else {break;}}
}

弹出首个元素

void HPPop(HP* php)
{assert(php);assert(php->size > 0);Swap(&php->a[0], &php->a[php->size - 1]);php->size--;AdjustDown(php->a, php->size, 0);
}

取出首个元素

HPDataType HPTop(HP* php)
{assert(php);assert(php->size);return php->a[0];
}

判空


bool HPEmpty(HP* php)
{assert(php);return php->size == 0;
}

堆插入


void HPPush(HP* php, HPDataType x)
{assert(php);if (php->size == php->capacity){int newcapacity = (php->capacity == php->size == 0 ? 4 : php->capacity * 2);HPDataType* tmp = (HPDataType*)realloc(php->a, newcapacity * sizeof(HPDataType));//扩建的是字节if (tmp == NULL){printf("malloc faild");return;}}php->a[php->size] = x;php->size++;Adjustup(php->a, php->size - 1);
}

http://www.hengruixuexiao.com/news/15256.html

相关文章:

  • 宁皓 wordpress北京推广优化经理
  • 如何建设网站使用游戏代理
  • 出国越南做网站8000保底seo全站优化全案例
  • 伊犁网站建设搜索引擎优化课程
  • 如何做网站清风制作自动外链工具
  • 用r做简易的网站b2b外链代发
  • 销售网站制作网站排名提升软件
  • 莱阳网站建设网络营销有什么特点
  • 芜湖市住房和城乡建设厅网站首页怎么免费制作网站
  • 北京王府井半岛酒店重庆seo网站推广优化
  • 企业网站建设 制作seo一个月工资一般多少
  • 价格划算的做pc端网站如何做线上推广
  • 中山建网站费用多少网络营销案例
  • 哪个网站做自考题目免费线上渠道推广有哪些方式
  • 领域网站建设如何让自己的网站快速被百度收录
  • 北京企业网站建设方廊坊百度推广电话
  • 旅游公司网站设计网络营销顾问是做什么的
  • 手机网站用什么软件做的好百度搜索风云榜排行榜
  • 十堰优化网站哪家好百度app下载安装普通下载
  • 哈尔滨建设投资集团天津百度网站快速优化
  • 株洲网站建设技术公司百度搜索浏览器
  • 惠州建站公司今日竞彩足球最新比赛结果查询
  • 网站建设有哪些步骤腾讯企点app
  • 织梦系统做导航网站广州seo公司如何
  • 网站建设6000元seo专业学校
  • 网站psd模板360搜图片识图
  • 做网站设计管理的专业中国联通业绩
  • 音乐网站可以用什么语言做国内做seo最好的公司
  • deramweaver做网站网络营销方式有几种
  • 简洁大气的公司网站百度搜索引擎介绍