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

小程序开发制作多少钱seocui cn

小程序开发制作多少钱,seocui cn,办图网ppt模板免费下载,最近在线观看免费完整版高清韩剧文章目录 源码是如何插入的?扩容向上调整实现大根堆代码: 源码是如何插入的? 扩容 在扩容的时候,如果容量小于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.ds6.com.cn/news/13117.html

相关文章:

  • 网站转小程序友情链接交易网站
  • 想做一个驾校的招生网站应该怎么做公司网站建设全包
  • 做公众号封面网站万能浏览器
  • b2b网站大全至勤如何制作一个网页页面
  • 房屋装修效果图大全宁波seo托管公司
  • wordpress查看网站内容百度搜索结果优化
  • 高端网站建设批发晚上必备免费软件大全苹果
  • 惠民卡看电影怎么用网站优化关键词
  • 湛江专业网站建设公司怎样推广自己的商城
  • 网站建设颜色培训机构网站设计
  • 郑州汉狮公司做网站广告推销
  • 800元做网站甘肃seo网站
  • 网站页面架构个人免费开发app
  • 网站被挂黑链了中国职业培训在线平台
  • 怎样用西瓜影音做网站seo自动工具
  • 两个网站如何使用一个虚拟主机网站服务器信息查询
  • 网站升级正在升级维护百度关键词点击排名
  • 在线真正免费定位的网站杭州seo招聘
  • 珠海网站建站模板百度快照怎么发布
  • 企业网站 自适应百度天眼查公司
  • 国外空间设计网站引擎搜索优化
  • 东昌府聊城网站建设电商还有发展前景吗
  • 广州专业做网站的科技公司做网站的网络公司
  • 做视频包的网站aso网站
  • 泗水做网站市场营销案例
  • 天河建设网站临沂网站建设公司哪家好
  • html5高端网站建设织梦模板怎么免费做网站
  • 餐饮业建设网站意义一呼百应推广平台
  • 盘龙城做网站网络推广公司如何做
  • 虚拟币交易网站源码青海百度关键词seo