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

小说阅读网站开发如何制作网页插件

小说阅读网站开发,如何制作网页插件,网站 建设 方案,商城网站如何搭建文章目录 源码是如何插入的?扩容向上调整实现大根堆代码: 源码是如何插入的? 扩容 在扩容的时候,如果容量小于64,那就2倍多2的扩容;如果大于64,那就1.5倍扩容。 还会进行溢出的判断&#xff0c…

文章目录

  • 源码是如何插入的?
  • 扩容
  • 向上调整
  • 实现大根堆
    • 代码:

源码是如何插入的?

在这里插入图片描述

扩容

在这里插入图片描述

在扩容的时候,如果容量小于64,那就2倍多2的扩容;如果大于64,那就1.5倍扩容。

还会进行溢出的判断,如果决定的新容量大于给的数组最大容量,那就将其限制在数组最大容量:
在这里插入图片描述

向上调整

在这里插入图片描述

在进行向上调整的时候,会对传进来的comparator进行判断,如果不为空,那就使用程序员传进来的比较器接口,如果为空,那就说明调用者并未实现比较器,那么就使用java自己提供的函数siftUpComparable(k, x);

传进来的x就是要插入的值e。

在这里插入图片描述

这是使用程序员自己传进来的比较器进行比较,调用了compare接口进行比较,所以要想初始化一个大根堆,那就得自己写出一个compare函数然后传进去。

在使用自己写的compare函数时,会让x强转为Comparable类型,如果这个x不是可以比较的(未实现Comparable接口,那就会抛出类型转换异常)

实现大根堆

值得说明的是:
比较器函数是Comparator而不是Comparable。

代码:

import java.util.Comparator;
import java.util.PriorityQueue;class IntCmp implements Comparator<Integer> {@Overridepublic int compare(Integer o1, Integer o2) {// 当然,写o1.compareTo(o2)仍然是小根堆return o2.compareTo(o1);}
}public class Test {public static void main(String[] args) {PriorityQueue<Integer> priorityQueue = new PriorityQueue<>();priorityQueue.offer(1);priorityQueue.offer(2);priorityQueue.offer(3);priorityQueue.offer(4);System.out.print(priorityQueue.poll());System.out.print(priorityQueue.poll());System.out.print(priorityQueue.poll());System.out.println(priorityQueue.poll());// 1 2 3 4,可以发现java中提供的默认堆是小根堆System.out.println("======");PriorityQueue<Integer> priorityQueue1 = new PriorityQueue<>(new IntCmp());priorityQueue1.offer(1);priorityQueue1.offer(2);priorityQueue1.offer(3);priorityQueue1.offer(4);System.out.print(priorityQueue1.poll());System.out.print(priorityQueue1.poll());System.out.print(priorityQueue1.poll());System.out.print(priorityQueue1.poll());// 4 3 2 1,变为大根堆}
}
http://www.yayakq.cn/news/458532/

相关文章:

  • 微信 公众号 微网站开发学做网站需要什么软件
  • 网站左侧分类菜单怎么做俄文视频网站开发
  • 怎么网站建设公司wordpress mu 安装
  • 上海外贸建站it运维管理系统
  • wordpress 整站模板dw做链接网站无法显示该页面
  • 宁波建设银行网站首页wordpress多媒体上传
  • 重庆巴南网站制作北京经济技术开发区建设局网站
  • 购物车网站建设网页设计一般一个月工资多少
  • 做的物流网站企业网站 flash
  • 国外扁平化网站设计欣赏叫企业做的网站可不可以自己改主题
  • 网站开发项目计划书ppt电子商务网站建设有管理课后答案
  • 女和男做的视频网站阿里云邮箱企业邮箱
  • 用html做网站搜索框阳江网商会
  • 高端响应式网站开发企业画册印刷
  • 信誉好的专业网站建设互联网与网站有哪些
  • 自己做的网站旅游网站建设 pig
  • 宁波城乡建设网站辛集seo网站优化公司
  • 绿色配色的企业网站秦皇岛网站制作与网站建设公司
  • 游戏网站建设收费明细安徽淮南网
  • 网站死链怎么处理电子网站建设实验报告
  • 表白网页制作网站企业网站后台模板
  • 免费 网站青岛发现51例阳性
  • wordpress全站cdn ssl三年抗疫国库空虚殆尽
  • 网站建设中申请备案wordpress 音乐 主题
  • 公司注册名称大全seo最新快速排名
  • seo建站技术公众平台安全助手官网
  • 公司做外贸网站小程序商城哪个平台好
  • 出国做博后关注哪些网站阿里云wordpress安装目录
  • php网站开发框架在哪些网站上做推广好
  • 网页设计心得体会大二seo点击工具帮你火21星热情