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

做公务员题哪个网站比较好网站排名怎么做上去

做公务员题哪个网站比较好,网站排名怎么做上去,深圳建站公司收费,wordpress管理员登陆黄金挑战-数据流的中位数 1.数据流中中位数的问题 LeetCode295 https://leetcode.cn/problems/find-median-from-data-stream/ 思路分析 中位数的问题,我们一般都可以用 大顶堆小顶堆 来求解 小顶堆(minHeap):存储所有元素中…

黄金挑战-数据流的中位数

1.数据流中中位数的问题

LeetCode295
https://leetcode.cn/problems/find-median-from-data-stream/

思路分析

中位数的问题,我们一般都可以用 大顶堆+小顶堆 来求解

小顶堆(minHeap):存储所有元素中较大的一半,堆顶元素是其中最小的数
大顶堆(maxHeap):存储所有元素中较小的一半,堆顶元素是其中最大的数

相当于,把所有元素分成了大和小两半,计算中位数,只需要大的那半的最小值和小的那半的最大值即可。

如[1,2,3,4,5],分成小顶堆[3,4,5],大顶堆[2,1],中位数为3

过程
加1 小顶堆[1] 大顶堆[] 中位数 1
加2 小顶堆[2] 大顶堆[1] 中位数 (2+1)/2
加3 小顶堆[2,3] 大顶堆[1] 中位数 3
加4 小顶堆[3,4] 大顶堆[2,1] 中位数 (3+2)/2
加5 小顶堆[3,4,5] 大顶堆[2,1] 中位数 3

代码实现

Java中的堆(即优先队列)可方便实现,c++、python里没有提供堆结构,需要自己构造

class MedianFinder {// 小顶堆中存储的是比较大的元素,堆顶是其中的最小值PriorityQueue<Integer> minHeap;// 大顶堆中存储的是比较小的元素,堆顶是中期的最大值PriorityQueue<Integer> maxHeap;public MedianFinder() {this.minHeap = new PriorityQueue<>();this.maxHeap = new PriorityQueue<>((a, b) -> b - a);}public void addNum(int num) {// 小顶堆存储的是比较大的元素,num大于小顶堆中根元素时进入minHeapif (minHeap.isEmpty() || num > minHeap.peek()){minHeap.offer(num);// 如果minHeap比maxHeap多2个元素,就平衡一下if (minHeap.size() - maxHeap.size() > 1){maxHeap.offer(minHeap.poll());}}else{maxHeap.offer(num);// 这样可以保证多的那个元素肯定在minHeapif(maxHeap.size() - minHeap.size() > 0){minHeap.offer(maxHeap.poll());}}}public double findMedian() {if(minHeap.size() > maxHeap.size()){return minHeap.peek();}else if(minHeap.size() < maxHeap.size()){return maxHeap.peek();}else{return (minHeap.peek() + maxHeap.peek())/2.0;}}
}/*** Your MedianFinder object will be instantiated and called as such:* MedianFinder obj = new MedianFinder();* obj.addNum(num);* double param_2 = obj.findMedian();*/
http://www.yidumall.com/news/3501.html

相关文章:

  • 政府网站作用长沙百度网站推广公司
  • 上海市网站建设公叿游戏推广平台有哪些
  • 开网店的企业名称seo网站系统
  • java网站设计怎样注册个人网站
  • 政务网站开发毕业论文2022年最新十条新闻
  • 企业seo排名哪家好seo如何提高排名
  • 高大上网站建设公司网站维护的内容有哪些
  • 网站后台登陆密码忘记了搜索关键词排名查询
  • 免费自己做网站手机谷歌google官网入口
  • 东莞住建局网站网站在线优化检测
  • 大兴企业官网网站建设百度关键词排名靠前
  • 淄博网站app成人短期培训学校
  • 建设工程网上质检备案网站seo关键词优化服务
  • 网站建设 成本分析谷歌seo关键词排名优化
  • 营销型网站服务福州百度快速优化
  • 网站主要的设计内容主题seo服务套餐
  • 给公司创建网站流程开网店
  • 网站建设分几模块web网站设计
  • 广东网站建设公司电话交换友情链接的渠道有哪些
  • 电商网站建设目的站长工具百度
  • 办公网站建设方案windows系统优化软件
  • wordpress编辑页面模板下载旧版优化大师
  • 成立做网站的公司有哪些什么是网络销售
  • 做亚马逊网站需要租办公室吗巨量算数官方入口
  • 垫江做网站营销推广ppt
  • 商务网站建设工程师广州竞价托管公司
  • 做微信公众号第三网站湖南广告优化
  • 做设计的网站商家入驻seo自学网app
  • 廊坊网站建设公司seo排名外包
  • 做伊朗的外贸公司网站网站keywords