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

上海网站制作公司多少钱搜索网站大全

上海网站制作公司多少钱,搜索网站大全,商业计划的网站建设费用,5ucms怎样做网站自适应算法流程: 与⽗结点的权值作⽐较,如果⽐它⼤,就与⽗亲交换; 交换完之后,重复 1 操作,直到⽐⽗亲⼩,或者换到根节点的位置 大家可能会有点疑惑,这个是大根堆,22是怎么跑到…

算法流程: 

  1. 与⽗结点的权值作⽐较,如果⽐它⼤,就与⽗亲交换; 
  2. 交换完之后,重复 1 操作,直到⽐⽗亲⼩,或者换到根节点的位置

大家可能会有点疑惑,这个是大根堆,22是怎么跑到上面的?刚开始的时候都是大根堆,比如22的位置,原本是99,是一个合法的大根堆,我们在删除堆的元素的时候,就会让小元素(22)跑到顶部,因为删除堆顶元素的操作是,堆尾本来有一个22,堆顶元素是99,我们要把99删掉,就是拿99和22交换,此时删除数组里面最后一个元素,就是删除99,22跑到上面的时候左右两边的子树都是一个合法的大根堆,就是22,不是平白无故爬上来的,是在删除堆顶元素的时候跑上来的,跑完之后左右子树全都是一个合法的堆,此时我们在执行向下调整到算法才是有意义的,如果22跑到上面的时候,左右边的子树都不是一个合法的大根堆的话,向下调整是没有意义的。 

时间复杂度

最差情况下,我会从根节点一直转移,转移一个树的高度,因此它的时间复杂度也是O(logN)

代码实现

void down(int parent)//拿当前结点和孩子作比较
{int child = parent * 2;//当孩子存在指向向下调整算法while (child <= n) //左孩子都不存在,右孩子一定不存在{//找最大的孩子//存在右孩子并且右孩子大于左孩子,条件满足指向最大的孩子,否则不作为if (child + 1 <= n && heap[child + 1] > heap[child]) child++;if (heap[parent] >= heap[child]) return; //如果父节点大于孩子节点就不用调整了swap(heap[parent], heap[child]); //交换父子节点parent = child; //父节点向下走child = parent * 2; //孩子向下走}
}

http://www.khdw.cn/news/59236.html

相关文章:

  • 公司网站的留言板怎么做深圳小程序建设公司
  • 外贸网站虚拟空间深圳谷歌优化seo
  • 天河公司网站建设私域运营软件
  • seo获客seo外贸推广
  • 深圳市住房城乡建设局网站首页线上营销的优势和劣势
  • 第一模板网站上的模板怎么下载百度seo泛解析代发排名
  • 1m宽带做网站银川网站seo
  • 做钢管用哪个门户网站网站外链优化方法
  • 网站开发首选seo实战培训教程
  • wordpress做淘宝的交流插件珠海优化seo
  • 优质视频素材网站广州网站外包
  • 怎么在网站上做按钮代写文案平台
  • 嘉兴 做企业网站百度推广的广告真实可信吗
  • 重庆制作网页设计四川seo整站优化费用
  • 企业展示建设网站如何做seo
  • 手机网站开发多少钱品牌运营
  • 我想做京东网站淘宝怎么做的seo推广怎么做
  • 杭州下沙网站建设海外独立站
  • 微信如何做网站it教育培训机构
  • 儿童摄影网站建设百度引擎搜索网址
  • pc网站怎么做搜索引擎网址有哪些
  • 怎么可以上传自己做的网站网站关键词排名服务
  • 网站3d展示怎么做百度推广代理公司广州
  • 域名有了主机有了如何做网站长春seo网站管理
  • 张家口城乡建设局网站百度搜索热词查询
  • 个人免费网站怎么建设万网域名查询注册商
  • 网站推荐货源培训机构有哪些
  • 成都建站制作自己的网页
  • 西安摩高网站建设海口seo快速排名优化
  • wordpress做单页销售网站爱上链外链购买平台