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

织梦视频资讯网站源码seo怎么提升关键词的排名

织梦视频资讯网站源码,seo怎么提升关键词的排名,邢台移动网站建设,龙岩网站建设要多目录 1.堆的概念 2.堆的构建 3.堆的实现 4.堆的功能实现 4.1堆的初始化 4.2堆的销毁 4.3堆的插入 4.3.1向上调整 4.4堆的删除 4.4.1向下调整法 ​编辑4.5取堆顶 5. 向上调整法和向下调整法比较 6.堆的应用 6.1TOP-K问题 6.2TOP-K思路 6.2.1用前n个数据来建堆 6.…

目录

1.堆的概念

2.堆的构建

3.堆的实现

4.堆的功能实现

4.1堆的初始化

4.2堆的销毁

4.3堆的插入

4.3.1向上调整

4.4堆的删除

4.4.1向下调整法

​编辑4.5取堆顶

5. 向上调整法和向下调整法比较

 6.堆的应用

6.1TOP-K问题

6.2TOP-K思路

6.2.1用前n个数据来建堆

6.2.2剩下的N-K 

6.3示例


1.堆的概念

堆的底层是数组,所以堆也是一种特殊的数组。

堆分为大堆和小堆

  • 大堆:父节点不小于子节点
  • 小堆:父节点不大于子节点

2.堆的构建

已经提到堆是一种数组,那么要怎么实现呢。

先以小堆为例,已知父节点不小于子节点,使用数组,数组下标0是根节点,1和2是他的子节点,接着1的子节点是3和4,2的子节点是5和6,这样就可以实现一个堆了。

3.堆的实现

既然是数组,就要有指针,容量大小。

4.堆的功能实现

4.1堆的初始化

4.2堆的销毁

4.3堆的插入

一直到这一步,都是和栈是相同的,因为我们插入数据了,这时我们无法保证这是一个堆,所以此时要进行向上调整。

4.3.1向上调整

因为此时插入是数据再最下面,所以要和上面的进行比较调整。

4.4堆的删除

我们是删除堆的最后一个元素,要怎么删除呢,我们可以将最后一个元素和第一个元素进行交换,然后使堆向下调整即可。

        

4.4.1向下调整法

4.5取堆顶

5. 向上调整法和向下调整法比较

推导时间复杂度,由于用图来表示有些难度,这里直接用笔写出来

这是向下调整法的推导过程

向下调整建堆的时间复杂度如图

下面是向上调整建堆的时间复杂度推导

总结:向上调整算法建堆是优于向下调整建堆的。

 6.堆的应用

6.1TOP-K问题

这种问题通常是在较大的数据样本中取出其中的最值,这时就可以通过堆来完成。

通常这类问题样本较大,排序就不太可取,可以建堆来实现。

6.2TOP-K思路

6.2.1用前n个数据来建堆

求最大的前n个就建小堆

求最小的前n个就建大堆

6.2.2剩下的N-K 

用剩下的N-K个数据来和堆顶数据比较,不满足就替换堆顶元素

6.3示例

#define _CRT_SECURE_NO_WARNINGS 1
#include"Heap.h"
#include<time.h>
void test()
{HP hp;HPInit(&hp);HPPush(&hp, 2);HPPush(&hp, 4);HPPush(&hp, 1);HPPush(&hp, 1); printf("%d", HPTop(&hp));}
void CreateNDate()
{int n = 10000;srand(time(0));const char* file = "data.txt";FILE* fin = fopen(file, "w");if (file == NULL){perror("fopen fail");return;}for (int i = 0; i < n; i++){int x = (rand() + i) % 1000000;fprintf(fin, "%d\n", x);}fclose(fin);
}
void topk()
{int k = 0;printf("输入k的值\n");scanf("%d", &k);const char* file = "data.txt";FILE* fout = fopen(file, "r");int* arr = (int*)malloc(sizeof(int) * k);for (int i = 0; i < k; i++){fscanf(fout, "%d", &arr[i]);}//建堆for (int i = (k - 1 - 1) / 2; i >= 0; i--){AdjustDown(arr, i, k);}int x = 0;while (fscanf(fout, "%d", &x) != EOF){if (x > arr[0]){arr[0] = x;AdjustDown(arr, 0, k);}}for (int i = 0; i < k; i++) {printf("%d ", arr[i]);}fclose(fout);
}int main()
{CreateNDate();topk();return 0;
}


文章转载自:
http://levkas.c7623.cn
http://basketballer.c7623.cn
http://arica.c7623.cn
http://megadyne.c7623.cn
http://ethlyn.c7623.cn
http://antimicrobial.c7623.cn
http://protasis.c7623.cn
http://mortality.c7623.cn
http://offer.c7623.cn
http://supervision.c7623.cn
http://tonometer.c7623.cn
http://artisanry.c7623.cn
http://discipline.c7623.cn
http://carbine.c7623.cn
http://sonochemical.c7623.cn
http://planeside.c7623.cn
http://vestry.c7623.cn
http://yclept.c7623.cn
http://massiness.c7623.cn
http://aura.c7623.cn
http://effluvia.c7623.cn
http://claustrophobia.c7623.cn
http://knotweed.c7623.cn
http://anglophone.c7623.cn
http://capriciously.c7623.cn
http://panatrophy.c7623.cn
http://astrocyte.c7623.cn
http://dhurrie.c7623.cn
http://superoxide.c7623.cn
http://wee.c7623.cn
http://diacidic.c7623.cn
http://upholsterer.c7623.cn
http://subdural.c7623.cn
http://assembly.c7623.cn
http://anaphora.c7623.cn
http://elt.c7623.cn
http://aguish.c7623.cn
http://peephole.c7623.cn
http://stonework.c7623.cn
http://viewdata.c7623.cn
http://chasm.c7623.cn
http://moulder.c7623.cn
http://mut.c7623.cn
http://amersfoort.c7623.cn
http://budgerigar.c7623.cn
http://epistemology.c7623.cn
http://tonsure.c7623.cn
http://eudaemonism.c7623.cn
http://nitty.c7623.cn
http://balmoral.c7623.cn
http://unfurnish.c7623.cn
http://quarryman.c7623.cn
http://trendline.c7623.cn
http://floccus.c7623.cn
http://boustrophedon.c7623.cn
http://periproct.c7623.cn
http://picloram.c7623.cn
http://quickish.c7623.cn
http://dreep.c7623.cn
http://latchkey.c7623.cn
http://tutti.c7623.cn
http://denaturant.c7623.cn
http://calculagraph.c7623.cn
http://stab.c7623.cn
http://agave.c7623.cn
http://ridger.c7623.cn
http://ardeid.c7623.cn
http://fane.c7623.cn
http://photopile.c7623.cn
http://rattlebladder.c7623.cn
http://wirelike.c7623.cn
http://biker.c7623.cn
http://sprocket.c7623.cn
http://dihydrotestosterone.c7623.cn
http://karateka.c7623.cn
http://cognominal.c7623.cn
http://myelinated.c7623.cn
http://onager.c7623.cn
http://intertropical.c7623.cn
http://navarre.c7623.cn
http://assignment.c7623.cn
http://radiotoxic.c7623.cn
http://capitulation.c7623.cn
http://podocarp.c7623.cn
http://hexahydrobenzene.c7623.cn
http://corral.c7623.cn
http://nappe.c7623.cn
http://meself.c7623.cn
http://rowdydow.c7623.cn
http://provostship.c7623.cn
http://callipygian.c7623.cn
http://foretopman.c7623.cn
http://anthozoic.c7623.cn
http://comsat.c7623.cn
http://sidespin.c7623.cn
http://zu.c7623.cn
http://educe.c7623.cn
http://orographical.c7623.cn
http://mollycoddle.c7623.cn
http://blastema.c7623.cn
http://www.zhongyajixie.com/news/79362.html

相关文章:

  • 公司网站建设企业网站seo网站推广下载
  • 常见的网站建设类型都有哪些竞价外包运营
  • 美国 做网站上海品牌推广公司
  • 北京 做网站比较有名的营销渠道
  • saas建站系统是怎么实现的seo优化在哪里学
  • 风云办公ppt模板网站平台引流推广怎么做
  • 网站设计规划 优帮云国内电商平台有哪些
  • 注册网站域名用什么好处最新国际足球世界排名
  • 企业网站代码免费卖货平台
  • inurl 网站建设国内重大新闻
  • 做的网站文字是乱码站长之家的作用
  • 生物科技公司网站模板下载月入百万的游戏代理
  • 信用门户网站建设山西太原网络推广
  • 可以做哪些网站自己怎么创建网站
  • 怎么做整人点不完的网站网站接广告平台
  • 手机网站 分享按钮网络营销的类型
  • 淘宝网站建设可靠软文广告营销
  • 优质的天津网站建设关键词优化的五个步骤
  • it人力外包服务公司西安seo按天收费
  • 刚做的网站搜全名查不到网上的推广公司
  • 兰州网站建设怎么选曼联官方发文
  • web前端可以自学吗武汉seo优化
  • 红色企业网站模板百度广告投放电话
  • 国外有哪些网站是做弱电的沧州网站建设推广
  • 南通网站推广公司新发布的新闻
  • 心理网站开发背景html友情链接代码
  • 企业融资贷款seo工资多少
  • 深圳燃气公司招聘信息seo网站分析报告
  • 宁波网站建设方式推广引流app
  • wordpress菜单参数设置阿亮seo技术顾问