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

网站做抽奖活动钦州seo

网站做抽奖活动,钦州seo,日语网站建设,一个完整的项目策划书目录 满二叉树与完全二叉树高度h和树中节点个数N的关系 向上调整算法: 介绍: 复杂度推导: 向下调整算法: 介绍: 复杂度推导: 向上调整建堆: 介绍: 复杂度推导:…

目录

满二叉树与完全二叉树高度h和树中节点个数N的关系

向上调整算法:

介绍:

复杂度推导:

向下调整算法:

介绍:

复杂度推导:

向上调整建堆:

介绍:

复杂度推导:

向下调整建堆:

介绍:

复杂度推导:


满二叉树与完全二叉树高度h和树中节点个数N的关系

向上调整算法:

介绍:

函数功能:将堆通过向上调整算法使堆成为小堆(父亲<孩子)或大堆(父亲>孩子),堆内父亲=(孩子-1)/2。只要孩子还在堆范围内,就不断判断孩子与父亲的关系。若想设置小堆,则孩子<父亲就执行交换;若想设置大堆,则孩子>父亲就执行交换。

函数参数:HeapDataType * a—>堆内数据类型首元素的指针  int child—>堆底元素(孩子)

函数返回值:

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

复杂度推导:

一次向上调整最多调整高度次数,根据满二叉树h=log(N+1),完全二叉树h=log(N)+1,而时间复杂度计算的是最大情况的数量级,所以一次向上调整的复杂度为O(logN)


向下调整算法:

介绍:

函数功能:将堆通过向下调整算法使堆成为小堆(父亲<孩子)或大堆(父亲>孩子),使用假设法先假定要交换的元素为左孩子,child=parent*2+1,若右孩子>左孩子,则需交换的元素为parent*2+1+1。只要孩子还在堆范围内,就不断判断孩子与父亲的关系。若想设置小堆,则孩子<父亲就执行交换;若想设置大堆,则孩子>父亲就执行交换。

函数参数:HeapDataType * a—>堆内数据类型首元素的指针  int n —>堆内元素个数          int parent—>堆顶元素(父亲)

函数返回值:

void Adjustdown(HeapDataType* a, int n, int parent)
{size_t child = parent * 2 + 1;while (child < n){if (child + 1 < n && a[child + 1] < a[child]){child++;}if (a[child] > a[parent]){Swap(&a[child], &a[parent]);parent = child;child = parent * 2 + 1;}else{break;}}
}

复杂度推导:

一次向下调整最多调整高度次数,根据满二叉树h=log(N+1),完全二叉树h=log(N)+1,而时间复杂度计算的是最大情况的数量级,所以一次向下调整的复杂度为O(logN)


向上调整建堆:

介绍:

前提:上几层都是堆

先将数组内所有元素插入堆结构内,再从第一个元素到最后一个元素进行遍历,对每个元素使用向上调整算法,使堆结构成为大堆/小堆

复杂度推导:


向下调整建堆:

介绍:

前提:左右子树都是堆

先将数组内所有元素插入堆结构内,再从最后一个父亲的位置到第一个父亲的位置进行遍历,对每个元素使用向下调整算法,使堆结构成为大堆/小堆

复杂度推导:

http://www.yidumall.com/news/89123.html

相关文章:

  • 广西开网站信息公司竞价推广公司
  • php移动网站开发网络营销推广方法有哪些
  • 网站制作的公司哪个好防疫优化措施
  • 一个新的网站怎么做宣传电子商务主要学什么就业方向
  • 城口集团网站建设东莞网站seo技术
  • 南宁五象新区建设投资集团网站百度网站优化排名
  • 东莞新增疫情最新情况win7优化大师官方免费下载
  • 做办公室的网站网站开发费用
  • wordpress推送到百度百度seo权重
  • c2c网站开发策划湖州seo排名
  • 陵水网站建设公司网页模板图片
  • 番禺网站优化兰州网络推广优化服务
  • b站必看的纪录片昆山seo网站优化软件
  • wordpress 插件设计seo全称是什么意思
  • 网站广告形式郑州seo实战培训
  • 没有网站如何做落地页网站推广的几种方法
  • 工信部网站备案系统怎么注册百度搜索风云榜下载
  • vps上安装wordpress宁波seo深度优化平台有哪些
  • 手机怎么注册自己的网站长沙网站优化效果
  • seo赚钱品牌搜索引擎服务优化
  • 招聘网站入职分析表怎么做磁力棒
  • 国外一个做ppt的网站河南关键词优化搜索
  • 代理公司的经营范围seo工作流程图
  • 做电商什么素材网站好资阳地seo
  • 营销型平台网站建设seo优化器
  • uc网站怎么做天津seo网络
  • 网站运营做的是什么工作吸引客流的25个技巧
  • 家乐福网上商城app下载seo教程seo官网优化详细方法
  • 柳市网站建设公司专业seo推广
  • 东莞做网页已矣seo排名点击软件