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

哪些网站是用h5做的app 网站开发公司电话

哪些网站是用h5做的,app 网站开发公司电话,店铺设计图,商会小程序开发一个多少钱啊文章目录 概要堆2条件大顶堆小顶堆 堆的实现插入元素删除堆顶元素 堆代码小结 概要 堆#xff0c;有趣的数据结构。 那么#xff0c;如何实现一个堆呢#xff1f; 堆 堆#xff0c;有哪些重点#xff1a; 满足2条件大顶堆小顶堆 2条件 2条件#xff1a; 堆是一个… 文章目录 概要堆2条件大顶堆小顶堆 堆的实现插入元素删除堆顶元素 堆代码小结 概要 堆有趣的数据结构。 那么如何实现一个堆呢 堆 堆有哪些重点 满足2条件大顶堆小顶堆 2条件 2条件 堆是一个完全二叉树堆中的每个节点的值都必须大于等于或小于等于其树中每个节点的值 堆要满足这2个条件重点。即使后边插入数据或者删除数据之后还是要满足这2个条件来做调整。 大顶堆 特点 每个节点的值都大于等于子树中每个节点值的堆。 小顶堆 特点 每个节点的值都小于等于子树中每个节点值的堆。 堆的实现 实现一个堆重要的操作插入元素和删除堆顶元素 插入元素 堆化顺着节点所在的路径向上或者向下对比然后交换。 来看下插入的代码 public class Heap {private int[] a; // 数组从下标1开始存储数据private int n; // 堆可以存储的最大数据个数private int count; // 堆中已经存储的数据个数public Heap(int capacity) {a new int[capacity 1];n capacity;count 0;}public void insert(int data) {if (count n) return; // 堆满了count;a[count] data;int i count;while (i/2 0 a[i] a[i/2]) { // 自下往上堆化swap(a, i, i/2); i i/2;}}}删除堆顶元素 由大顶堆和小顶堆的定义可知堆顶元素要么最大要么最小 public void removeMax() {if (count 0) return -1; // 堆中没有数据a[1] a[count];--count;heapify(a, count, 1); }private void heapify(int[] a, int n, int i) { // 自上往下堆化while (true) {int maxPos i;if (i*2 n a[i] a[i*2]) maxPos i*2;if (i*21 n a[maxPos] a[i*21]) maxPos i*21;if (maxPos i) break;swap(a, i, maxPos);i maxPos;} }堆代码 来看个完整的代码吧这里给python的。如下 import sys class BinaryHeap:def __init__(self, capacity):self.capacity capacityself.size 0self.Heap [0]*(self.capacity 1)self.Heap[0] -1 * sys.maxsizeself.FRONT 1def parent(self, pos):return pos//2def leftChild(self, pos):return 2 * pos def rightChild(self, pos):return (2 * pos) 1def isLeaf(self, pos):if pos (self.size//2) and pos self.size:return Truereturn Falsedef swap(self, fpos, spos):self.Heap[fpos], self.Heap[spos] self.Heap[spos], self.Heap[fpos]def heapifyDown(self, pos):if not self.isLeaf(pos):if (self.Heap[pos] self.Heap[self.leftChild(pos)] or self.Heap[pos] self.Heap[self.rightChild(pos)]):if self.Heap[self.leftChild(pos)] self.Heap[self.rightChild(pos)]:self.swap(pos, self.leftChild(pos))self.heapifyDown(self.leftChild(pos))else:self.swap(pos, self.rightChild(pos))self.heapifyDown(self.rightChild(pos))def insert(self, element):if self.size self.capacity :returnself.size 1self.Heap[self.size] elementcurrent self.sizewhile self.Heap[current] self.Heap[self.parent(current)]:self.swap(current, self.parent(current))current self.parent(current)def minHeap(self):for pos in range(self.size//2, 0, -1):self.heapifyDown(pos)def delete(self):popped self.Heap[self.FRONT]self.Heap[self.FRONT] self.Heap[self.size]self.size- 1self.heapifyDown(self.FRONT)return poppeddef isEmpty(self):return self.size 0def isFull(self):return self.size self.capacity小结 关于堆就这么多吧 堆的概念跟推理还是相对来说简单的。比红黑树简单点。其实都一样的只要按照那些规则一条一条对着去理解应该还好。
http://www.hkea.cn/news/14385755/

相关文章:

  • 未成年做网站邢台公司网站建设
  • 模板手机网站建设公司排名智能开发平台软件
  • 湖北省建设厅网站陕西网络推广公司
  • 旅游网站规划设计方案wordpress add option
  • 聊城做企业网站的遵义新蓝外国语学校网站建设
  • 可以做专利聚类分析的免费网站哪里可以做网页
  • 网站seo入门基础教程书籍wordpress添加邮箱设置
  • php企业网站cms安徽省建设工程招标投标信息网官网
  • 柬埔寨网站建设运营维护公司网站建设选什么服务器
  • 怎么往网站里做游戏浦东新区建设工程安全质量监督站网站
  • 青岛网站建设有哪些公司江西航达建设集团网站
  • 网站建设程序的步骤过程dw做网站模板
  • 最新新闻热点事件50字重庆做seo网站优化选择哪家
  • 朔州城市建设网站wordpress微信小程序
  • 如何查看一个网站是否备案百度关键词搜索指数
  • 网站怎样盗链图片优购物官方网站手机版
  • 网站的特效代码长沙的网站建设
  • 淘宝联盟推广网站怎么建设贵阳哪些公司建网站
  • 婚恋网站的架构做网站标题居中代码
  • 武义住房和城乡建设局网站系统优化软件哪个最好的
  • 广西网站建设价格低四库一平台查询入口
  • 网站前台首页无法显示j网站开发的相关知识
  • 郑州网站排名哪家好php网站开发实战开发
  • 模板网站会影响网站优化吗网站的涂鸦效果图怎么做的
  • 深圳 旅游 网站建设net 网站开发
  • 婚庆网站建设总结申请自己的网站空间
  • 竞价单页 网站郑州网站优化培训
  • 广州南沙建设网站网页设计代码大全添加音乐
  • 网站建设定制设计长沙工商注册网上登记
  • 免费可以做旅游海报 的网站上海网站建设门户