电子商务网站建设与维护课程总结上海网站设计公司联系方式

张小明 2026/1/2 22:54:48
电子商务网站建设与维护课程总结,上海网站设计公司联系方式,wordpress手机端不显示内置图片,欧美 电台 网站模板4系列文章目录 文章目录 系列文章目录前言一、堆的定义二、堆的实现1.大/小堆的构建2.堆的增删查 前言 一、堆的定义 结构基础#xff1a;堆是基于完全二叉树的逻辑结构#xff0c;用数组来物理实现。 核心性质#xff1a;堆可分为大堆和小堆。 其中#xff0c;大堆要求每…系列文章目录文章目录系列文章目录前言一、堆的定义二、堆的实现1.大/小堆的构建2.堆的增删查前言一、堆的定义结构基础堆是基于完全二叉树的逻辑结构用数组来物理实现。核心性质堆可分为大堆和小堆。其中大堆要求每个子树的父节点左右子节点。小堆要求每个子树的父节点 左右子节点。//堆用C实现typedefintHPDataType;typedefstructHeap{HPDataType*_a;//堆元素的存放数组int_size;//有效元素个数int_capacity;//容量}Heap;二、堆的实现为什么堆可以用数组来实现因为数组可以实现快速的随机访问操作更加简单。再加上完全二叉树不会浪费很多数组的空间。1.大/小堆的构建以小堆为例为了让最小的数在堆顶其余的小数都在其子树的父亲节点。要用到“向下调整”的算法。来调整根节点和两子树的关系是根保持为最小。当parent n, 左 child 2 * n 1, 右child 2 * n 2 基于数组实现的索引规律//参数分别为 堆中元素(数组)元素总个数需要向下调整的父亲节点voidAdjustdowm(HPDataType*a,intn,introot){intparentroot;intchild2*parent1;//先假设左孩子while(childn)//结束条件孩子节点不能大于总数{if(childna[child]a[child1]){child;//右孩子小,使child走到右孩子}//如果孩子节点小于父亲节点if(a[child]a[parent]){swap(a[child],a[parent]);parentchild;childparent*21;}else{break;}}}但向下调整的前提是单前节点的左右子树都是小堆才能保证拿上来的是最小值。所以要从最后一个节点的父亲节点开始向下调整由下到上。当孩子child n时parent (n-1) /2 最后一个孩子是n-1, 得出最后一个父亲是(n-1-1)/2//构建堆——以小堆为例for(inti(n-1-1)/2;i0;i--)//从最后一个节点的父亲节点开始从下往上才能保证左右子树都是小堆{AdjustDown(hp-_a,hp-_size,i);}2.堆的增删查如何在堆中增加一个数而不破坏小堆的形式先把数据加在末尾再使用向上调整算法使数据到合适的地方。//向上调整---以小堆为例AdjustUp(HPDataType*a,intn,intchild){intparent(child-1)/2;while(child0)//当child 0时才算调整完{if(a[child]a[parent]){swap(a[child],a[parent]);childparent;parent(child-1)/2;}else{break;}}}增加一个元素// 堆的插入voidHeapPush(Heap*hp,HPDataType x){//插入时只能先在末尾插入再调整到堆中合适的地方if(hp-_sizehp-_capacity){hp-_capacity*2;HPDataType*tmp(HPDataType*)realloc(hp-_a,sizeof(HPDataType)*hp-_capacity);if(tmp!NULL){hp-_atmp;}else{printf(扩容失败);}}hp-_a[hp-_size]x;//需要将插入值向上调整AdjustUp(hp-_a,hp-_size,hp-_size-1);}删堆顶的数据是先将堆顶与数组最后一个元素交换再删除最后一个元素将新元素向下调整。因为最后一个元素方面删除。// 堆的删除——肯定删的是堆顶的数据voidHeapPop(Heap*hp){intendhp-_size-1;if(end0){return;}else{swap(hp-_a[0],hp-_a[end]);hp-_size--;AdjustDown(hp-_a,hp-_size,0);}}
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

平乡县网站建设九江公司注册

本文章参考一个成熟的电子系统功能安全方案,以此给FPGA系统RTL层和功能层的功能安全需求,提供一定参考。 安全生命周期 概述 a)SSS已通过运行符合ISO 9001:2015与IATF 16949:2016质量标准的质量控制系统,建立了产品开发流程。除此…

张小明 2026/1/2 22:54:48 网站建设

广州响应式网站网站建设成为

Annotators完整部署指南:企业级计算机视觉模型实战解析 【免费下载链接】Annotators 项目地址: https://ai.gitcode.com/hf_mirrors/lllyasviel/Annotators 项目核心价值与商业应用场景 Annotators工具库作为集成了多种先进计算机视觉模型的解决方案&#…

张小明 2026/1/2 22:52:45 网站建设

在淘宝做网站可以改域名吗北京网页制作服务商

ParsecVDD虚拟显示器完整指南:快速上手与高效配置 【免费下载链接】parsec-vdd ✨ Virtual super display, upto 4K 2160p240hz 😎 项目地址: https://gitcode.com/gh_mirrors/pa/parsec-vdd 想要在电脑上轻松扩展多个虚拟显示器来提升工作效率吗…

张小明 2026/1/2 22:50:41 网站建设

网站单页模板怎么安装wordpress上传上限

Qwen-Image-Lightning:重新定义实时AI图像生成的智能引擎 【免费下载链接】Qwen-Image-Lightning 项目地址: https://ai.gitcode.com/hf_mirrors/lightx2v/Qwen-Image-Lightning 在AI图像生成领域,速度与质量的平衡一直是技术发展的核心挑战。传…

张小明 2026/1/2 22:48:38 网站建设

哪些大学网站做的比较好app网站开发成功案例

在单片机开发中,引脚资源和功能接口是不少工程师的瓶颈,面对UART、I2C、SPI等多种扩展方式,选对核心接口是提升效率、控制成本的关键,本文将针对主流单片机,给出建议,以供小伙伴们参考。1、按应用场景定方案…

张小明 2026/1/2 22:46:35 网站建设

上海网站建设 劲晟做sorry动图的网站

适用情况 常规情况 能够识别到一个设备 需要解决情况 能正常识别 stlink 但是无法在 keil 出现设备,为 no target connect。 如果没有接错 SWCLK 和 SWDIO,以及 BOOT 都为 0 的话,直接通过初始化(擦除所有程序)芯片来实现解锁 …

张小明 2026/1/2 22:44:30 网站建设