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

企业网站的推广方式和手段有哪些恶意点击推广神器

企业网站的推广方式和手段有哪些,恶意点击推广神器,网上开店的好处,wordpress插件放哪前言 之前已经说过堆的特点了,具体文章在数据结构与算法【队列】的Java实现-CSDN博客。因此直接实现堆的其他功能。 建堆 所谓建堆,就是将一个初始的堆变为大顶堆或是小顶堆。这里以大顶堆为例。展示如何建堆。 找到最后一个非叶子节点从后向前&…

前言 

之前已经说过堆的特点了,具体文章在数据结构与算法【队列】的Java实现-CSDN博客。因此直接实现堆的其他功能。

建堆

所谓建堆,就是将一个初始的堆变为大顶堆或是小顶堆。这里以大顶堆为例。展示如何建堆。

  1. 找到最后一个非叶子节点
  2. 从后向前,对每个节点执行下潜

一些规律(0作为根节点时满足)

  • 一棵满二叉树节点个数为 2^h-1,如下例中高度 h=3 节点数是 2^3-1=7
  • 非叶子节点范围为 [0, size/2-1]

建堆的时间复杂度为O(n)。

一个基础的大顶堆实现代码如下

public class MaxHeap {int[] array;int size;public MaxHeap(int capacity) {this.array = new int[capacity];}public MaxHeap(int[] array) {this.array = array;this.size = array.length;heapify();}/*** 获取堆顶元素** @return 堆顶元素*/public int peek() {return array[0];}/*** 删除堆顶元素** @return 堆顶元素*/public int poll() {int top = array[0];swap(0, size - 1);size--;down(0);return top;}/*** 删除指定索引处元素** @param index 索引* @return 被删除元素*/public int poll(int index) {int deleted = array[index];up(Integer.MAX_VALUE, index);poll();return deleted;}/*** 替换堆顶元素** @param replaced 新元素*/public void replace(int replaced) {array[0] = replaced;down(0);}/*** 堆的尾部添加元素** @param offered 新元素* @return 是否添加成功*/public boolean offer(int offered) {if (size == array.length) {return false;}up(offered, size);size++;return true;}// 将 offered 元素上浮: 直至 offered 小于父元素或到堆顶private void up(int offered, int index) {int child = index;while (child > 0) {int parent = (child - 1) / 2;if (offered > array[parent]) {array[child] = array[parent];} else {break;}child = parent;}array[child] = offered;}// 建堆private void heapify() {// 如何找到最后这个非叶子节点  size / 2 - 1for (int i = size / 2 - 1; i >= 0; i--) {down(i);}}// 将 parent 索引处的元素下潜: 与两个孩子较大者交换, 直至没孩子或孩子没它大private void down(int parent) {int left = parent * 2 + 1;int right = left + 1;int max = parent;if (left < size && array[left] > array[max]) {max = left;}if (right < size && array[right] > array[max]) {max = right;}if (max != parent) { // 找到了更大的孩子swap(max, parent);down(max);}}// 交换两个索引处的元素private void swap(int i, int j) {int t = array[i];array[i] = array[j];array[j] = t;}
}
http://www.yayakq.cn/news/981616/

相关文章:

  • 自己如何注册网站wordpress前台构架图
  • 网站开发工程师6织梦增加网站英文名称
  • 网站关键词的布局少林寺网站谁做的
  • 网站管理系统排行榜网站广告推广平台
  • 淘宝客网站建设的策略阿里云怎么搭载wordpress
  • 自己开一个网站要多少钱大型科技网站建设
  • 如何登录中国建设银行河北分行网站一个前端页面多少钱
  • PS做网站页面尺寸WordPress发货
  • 做网站用哪种编程语言营销策划方案内容
  • 用jsp建设网站小学老师在哪个网站做ppt
  • 温岭网络推广seo网站营销推广全程实例pdf
  • 国外做蒸汽锅炉的网站有些人做网站不用钱的 对吗
  • 广州建网站定制wordpress固定连接设置
  • 网站做接口排线方法购物券网站怎么做
  • 网站录入wordpress 主题 破解版
  • 12个优秀平面设计素材网站商城网站建设视频教程
  • 网站开发与网站设计区别永久免费网站模板
  • 建设专业网站运营团队四川建设局网站
  • 网站备案 免费做网站公司宁波上市
  • 黑龙江网站建设开发网页设计的风格可分为两大类
  • 网站建设推荐华网天下网站的透明图片怎么做
  • 网页设计与制作是前端吗濮阳做网站优化
  • 深圳网站设计有名 乐云践新小程序源码破解
  • 网站备案不通过怎么解决做购物网站小图标
  • 深圳赶集同城网站建设2017网站建设价目表
  • 天津做网站一般多少钱深圳企业网站建设企业
  • 北京 外贸网站沈阳网络关键词排名
  • 什么叫网站建设服务长沙seo运营
  • 响应式网站建站平台甘肃省建设厅官方网站信息网
  • 查询网站域名备案培训机构暑假不能补课