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

快速微信网站建设网站建设与维护 教学大纲

快速微信网站建设,网站建设与维护 教学大纲,深圳找工作哪个网站好,网站做词一.Top-K问题 #include<stdio.h> //先自主创建n个数据 void CreateNDate() {// 造数据int n 100000;srand(time(0));//表示随时间初始化随机生成数的种子const char* file "data.txt";///创建一个文件FILE* fin fopen(file, "w");//“只写”写入创…

一.Top-K问题

#include<stdio.h>
//先自主创建n个数据
void CreateNDate()
{// 造数据int n = 100000;srand(time(0));//表示随时间初始化随机生成数的种子const char* file = "data.txt";///创建一个文件FILE* fin = fopen(file, "w");//“只写”写入创建的数据if (fin == NULL){perror("fopen error");return;}for (int i = 0; i < n; ++i){int x = (rand() + i) % 1000000;//生成n个100000以内的数据fprintf(fin, "%d\n", x);//写入文件}fclose(fin);//关闭文件
}
void topk()
{printf("请输⼊k:>");int k = 0;scanf("%d", &k);const char* file = "data.txt";FILE* fout = fopen(file, "r");//只读条件下从文件内读取数据if (fout == NULL){perror("fopen error");return;}int val = 0;int* minheap = (int*)malloc(sizeof(int) * k);if (minheap == NULL){perror("malloc error");return;}for (int i = 0; i < k; i++){fscanf(fout, "%d", &minheap[i]);//先在动态申请的数组里暂时插入k个数据}// 建k个数据的⼩堆for (int i = (k - 1 - 1) / 2; i >= 0; i--){AdjustDown(minheap, k, i);//向下调整算法,}int x = 0;while (fscanf(fout, "%d", &x) != EOF){// 读取剩余数据,⽐堆顶的值⼤,就替换他进堆if (x > minheap[0]){minheap[0] = x;AdjustDown(minheap, k, 0);}}for (int i = 0; i < k; i++){printf("%d ", minheap[i]);}fclose(fout);
}//向下调整算法(具体函数内部结构参数可以参考我上一篇文章,即二叉树的数组结构)
void AdjustDown(HP* hp, int parent, int n)//n是向下调整的下界范围
{int child = parent * 2 + 1;//公式while (child < n){//建小根堆if (child + 1 < n && hp->arr[child + 1] < hp->arr[child])//child+1的目的是确保两个孩子结点都是有意义的结点{child++;}if (hp->arr[parent] > hp->arr[child]){swap(&hp->arr[parent], &hp->arr[child]);parent = child;child = parent * 2 + 1;}else{//我最小的孩子都比父节点大,那么这个堆就是正常堆了,直接退出break;}}
}

http://www.dtcms.com/wzjs/571196.html

相关文章:

  • 网站建设愿景微信小程序注册要钱吗
  • 找设计公司上哪个网站江西百度推广开户多少钱
  • 长沙专业网站制作设计wordpress怎样添加轮播图
  • 专做网站漏扫的工具深圳市光明区属于哪个区
  • 网站域名免费申请做网站需要掌握什么软件
  • it网站建设干嘛的知名网站制作全包
  • 做系统哪个网站好wordpress相册轮播
  • 冀icp 网站建设建设银行河南分行网站
  • 帮别人做网站多少钱苏州建网站哪家
  • 更改网站图标自适应门户网站模板
  • 网站平台结构交通信息华建设网站
  • 广告案例的网站专业外贸网站制作公司
  • 洛阳建站公司效果杭州模板建站软件
  • 简述网站开发流程 旅游seo优化网站排名
  • 网站搭建网站管理潍坊高新建设局网站
  • 江门市专业做网站公司机械设计网
  • 网站页脚信息预约网站模板
  • 上海做网站公司推荐广西建设厅网站绿色建筑标识
  • 山东饰品行业网站制作网站制作设计哪家公司好
  • 个人网站模板html小程序建站平台
  • 网站建设重庆最加科技怎么给网站做开场动画
  • 不用花生壳做网站服务器wordpress建的网站
  • 如何与别的网站做友情链接服务网站欣赏
  • 足球网站模板下载wordpress下载页插件
  • 找做外墙油漆网站什么网站做跨境电子商务
  • 软件跟网站开发的区别公众号官网登录
  • 怎么做公司免费网站织梦网站文章发布模板下载
  • 太仓做企业网站服务器租赁合同范本
  • 网站开发工作商城网站定制建设价位
  • 南京建设网站维护2021深圳装修公司排名前十强