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

做简历那些网站比较好企业网站制作价格

做简历那些网站比较好,企业网站制作价格,安徽企业平台网站建设,做外贸怎样免费登录外国网站一、题目要求 中位数是有序整数列表中的中间值。如果列表的大小是偶数,则没有中间值,中位数是两个中间值的平均值。 例如 arr [2,3,4] 的中位数是 3 。 例如 arr [2,3] 的中位数是 (2 3) / 2 2.5 。 实现 MedianFinder 类: MedianFinder() 初始化 …

一、题目要求

中位数是有序整数列表中的中间值。如果列表的大小是偶数,则没有中间值,中位数是两个中间值的平均值。
例如 arr = [2,3,4] 的中位数是 3 。
例如 arr = [2,3] 的中位数是 (2 + 3) / 2 = 2.5 。

实现 MedianFinder 类:
MedianFinder() 初始化 MedianFinder 对象。
void addNum(int num) 将数据流中的整数 num 添加到数据结构中。
double findMedian() 返回到目前为止所有元素的中位数。与实际答案相差 10-5 以内的答案将被接受。

示例 1:
输入
[“MedianFinder”, “addNum”, “addNum”, “findMedian”, “addNum”, “findMedian”]
[[], [1], [2], [], [3], []]
输出
[null, null, null, 1.5, null, 2.0]

解释
MedianFinder medianFinder = new MedianFinder();
medianFinder.addNum(1); // arr = [1]
medianFinder.addNum(2); // arr = [1, 2]
medianFinder.findMedian(); // 返回 1.5 ((1 + 2) / 2)
medianFinder.addNum(3); // arr[1, 2, 3]
medianFinder.findMedian(); // return 2.0
提示:

-105 <= num <= 105
在调用 findMedian 之前,数据结构中至少有一个元素
最多 5 * 104 次调用 addNum 和 findMedian

二、实现代码

原理:使用了两个堆存储数据,一个最大堆用于存储较小的一半元素,另一个最小堆用于存储较大的一半元素,然后根据堆顶元素计算得到中位数。
1. Java

class MedianFinder {private PriorityQueue<Integer> low;private PriorityQueue<Integer> high;public MedianFinder() {// Max-heap to store the smaller half elementslow = new PriorityQueue<>((a, b) -> b - a);// Min-heap to store the larger half elementshigh = new PriorityQueue<>();}public void addNum(int num) {low.offer(num);high.offer(low.poll());if (low.size() < high.size()) {low.offer(high.poll());}}public double findMedian() {if (low.size() > high.size()) {return low.peek();} else {return (low.peek() + high.peek()) / 2.0;}}
}

2. C++

class MedianFinder {
private:priority_queue<int> low; // Max-heappriority_queue<int, vector<int>, greater<int>> high; // Min-heappublic:MedianFinder() { }void addNum(int num) {low.push(num);high.push(low.top());low.pop();if (low.size() < high.size()) {low.push(high.top());high.pop();}}double findMedian() {if (low.size() > high.size()) {return low.top();} else {return (low.top() + high.top()) / 2.0;}}
};

3. Python3

class MedianFinder:def __init__(self):self.low = []  # max-heap (inverted min-heap)self.high = []  # min-heapdef addNum(self, num: int) -> None:heapq.heappush(self.low, -num)heapq.heappush(self.high, -heapq.heappop(self.low))if len(self.low) < len(self.high):heapq.heappush(self.low, -heapq.heappop(self.high))def findMedian(self) -> float:if len(self.low) > len(self.high):return -self.low[0]else:return (-self.low[0] + self.high[0]) / 2.0

:如果四python会出错,只能是python3

http://www.khdw.cn/news/24718.html

相关文章:

  • 厦门建设银行网站宁波seo网站排名
  • 运城可以做网站的公司网站seo优化徐州百度网络
  • 鄂州门户网优化方案怎么写
  • 网络营销从网站建设开始百度推广信息流有用吗
  • 网上开店如何找货源搜索引擎优化的内容有哪些
  • 网站建设需求调研表市场推广外包团队
  • 东莞农村商业银行企业关键词优化最新报价
  • 哪个全球购网站做的好处长沙做优化的公司
  • wordpress 关闭访问seo建站工具
  • 市建委官方网站抖音关键词查询工具
  • 网站关闭流程网站免费高清素材软件
  • wordpress操作界面seo关键词是什么
  • 杭州 高端网站建设百度指数是干嘛的
  • 设计师分享网站ui设计培训班哪家好
  • 网站建设基本网络媒体
  • 网站做分布式部署体验营销是什么
  • 温州网站建设按效果付费的推广
  • 国土资源网站建设方案b2b是什么意思
  • 宠物商品销售网站开发背景友情链接交换要注意哪些问题
  • wordpress是全开源吗网站排名优化专业定制
  • 做外贸网站功能网络营销优化
  • 免费编程网课网站排名优化手机
  • 手机app网站建设深圳网站建设服务
  • 网站上线 备案网站运营推广选择乐云seo
  • 深圳和海枫建设集团有限公司网站深圳营销推广公司
  • 做电商网站就业岗位晋升营销网络推广
  • 东莞市官网网站建设哪家好抖音关键词排名查询
  • 国外做调查问卷的网站首页优化公司
  • 信用门户网站建设专家评价优化落实疫情防控新十条
  • 做城市门户网站怎么发展学开网店哪个培训机构好正规