Google算法题:寻找中位数
来源:互联网 发布:微信轰天雷炸群软件 编辑:程序博客网 时间:2024/05/17 04:56
题目
题目来源:Link
代码
1、方法一
package com.graph;import java.util.*;public class Solution{PriorityQueue<Integer> minHeap = new PriorityQueue<Integer>(Collections.reverseOrder());PriorityQueue<Integer> maxHeap = new PriorityQueue<Integer>();public void addNum(int num) {minHeap.add(num);maxHeap.add(minHeap.poll());//让数不管怎样加到了maxheap中if(minHeap.size()<maxHeap.size()) {//maxHeap可能大1,反正拿一个给minHeap就平衡了minHeap.add(maxHeap.poll());}}public double findMedian() {if(minHeap.size()==maxHeap.size()) {return (minHeap.peek()+maxHeap.peek())/2.0;}else {return minHeap.peek();}}}
2、方法二
public class Solution{List<Integer> list = new ArrayList<Integer>();//logpublic void addNum(int num){list.add(num);Collections.sort(list);}public int findMedian(){int size = list.size();if(size==0) return null;if(size%2!=0){return list.get(size/2);}else{return (list.get(size/2)+list.get(size/2-1))/2;}}}
阅读全文
0 0
- Google算法题:寻找中位数
- 寻找中位数算法中的错误
- 寻找中位数
- 寻找中位数
- 寻找中位数
- Google算法题:M-寻找缺失的数
- 减治算法之寻找两个递增序列的中位数
- 寻找素数 Google题
- 关于寻找中位数
- 2:寻找中位数
- openjudge 寻找中位数
- 海量数据寻找中位数
- findMedianSortedArrays 寻找中位数
- HDU1157寻找中位数
- hackerrank挑战题——寻找正在运行的中位数
- 海量数据中寻找中位数
- 海量数据中寻找中位数
- 海量数据中寻找中位数
- 备忘录
- VS2010设置字体和行号
- nbuntu16.04安装docker
- 聊聊 React Router v4 的设计思想
- git push时出现错误refusing to update checked out branch: refs/heads/master
- Google算法题:寻找中位数
- JDBC
- BOM基础一
- 三合一车轮?RestyPass,HTTP调用客户端库
- 利用Sqoop从oracle同步数据到HDFS出现The Network Adapter could not establish the connection的解决方法
- 【PAT】【Advanced Level】1050. String Subtraction (20)
- MongoDB主从复制,副本集, Sharding
- 解决fatal: No remote repository specified. Please, specify either a URL...
- 欢迎使用CSDN-markdown编辑器