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

免费域名申请网站空间简述网站建设的基本流程

免费域名申请网站空间,简述网站建设的基本流程,网站建设与推广员岗位职责,在哪个网站做游戏视频好解题思路: ​​统计频率: 使用哈希表统计每个元素的出现频率。维护最小堆: 遍历哈希表,将元素及其频率存入最小堆,堆的大小保持为 k。当堆的大小超过 k 时,如果当前元素频率大于堆顶,弹出堆顶并…

在这里插入图片描述

解题思路:

  1. ​​统计频率: 使用哈希表统计每个元素的出现频率。
  2. 维护最小堆: 遍历哈希表,将元素及其频率存入最小堆,堆的大小保持为 k。当堆的大小超过 k 时,如果当前元素频率大于堆顶,弹出堆顶并存入当前元素及其频率。
  3. ​​提取结果: 堆中剩余的元素即为前 k 个高频元素。

Java代码:

class Solution {public int[] topKFrequent(int[] nums, int k) {Map<Integer, Integer> map = new HashMap<>();for (int num : nums)map.put(num, map.getOrDefault(num, 0) + 1);PriorityQueue<Map.Entry<Integer, Integer>> minHeap = new PriorityQueue<>((a, b) -> a.getValue() - b.getValue());for (Map.Entry<Integer, Integer> entry : map.entrySet()) {if (minHeap.size() < k) {minHeap.offer(entry);} else if (entry.getValue() > minHeap.peek().getValue()) {minHeap.poll();minHeap.offer(entry);}}int[] result = new int[k];for (int i = 0; i < k; i++)result[i] = minHeap.poll().getKey();return result;}
}

复杂度分析:

  • 时间复杂度: 每个元素插入和删除的复杂度为 O(log k),总共有 n 个元素,因此总复杂度为 O(n log k)。
  • 空间复杂度: 哈希表存储 O(n),堆存储最多 k 个元素,总复杂度为 O(n)。

在这里插入图片描述

解题思路:

  1. 数据结构设计​:
  • 最大堆(maxHeap)​​:存储较小的一半元素,堆顶为最大值。
  • ​​最小堆(minHeap)​​:存储较大的一半元素,堆顶为最小值。
  • 平衡条件​​:maxHeap 的大小最多比 minHeap 大 1,或两者大小相等。
  1. 添加元素逻辑​​:
  • 若新元素小于等于 maxHeap 的堆顶,插入 maxHeap;否则插入 minHeap。
  • 平衡调整:
    • 若 maxHeap 的大小超过 minHeap 的大小 + 1,将 maxHeap 的堆顶移到 minHeap。
    • 若 minHeap 的大小超过 maxHeap,将 minHeap 的堆顶移到 maxHeap。
  1. 查找中位数:
  • 若两堆大小相等,返回两堆顶的平均值。
  • 否则,返回 maxHeap 的堆顶(奇数情况)。

Java代码:

public class MedianFinder {private PriorityQueue<Integer> maxHeap;private PriorityQueue<Integer> minHeap;public MedianFinder() {maxHeap = new PriorityQueue<>((a, b) -> b - a); // 负数 a 在前,0 相等,正数 a 在后minHeap = new PriorityQueue<>();}public void addNum(int num) {if (maxHeap.isEmpty() || num <= maxHeap.peek()) {maxHeap.offer(num);} else {minHeap.offer(num);}if (maxHeap.size() > minHeap.size() + 1) {minHeap.offer(maxHeap.poll());} else if (minHeap.size() > maxHeap.size()) {maxHeap.offer(minHeap.poll());}}public double findMedian() {if (maxHeap.size() > minHeap.size()) {return maxHeap.peek();} else {return (maxHeap.peek() + minHeap.peek()) / 2.0;}}
}

复杂度分析:

  • 时间复杂度: O(log n)。
  • 空间复杂度: 两个堆的总空间为 O(n)。
http://www.dtcms.com/wzjs/400505.html

相关文章:

  • 网站托管公司市场营销策划书范文5篇精选
  • html5网站模板移动端优化设计答案四年级上册语文
  • 营销型网站建设定制网站建设优化大师安卓版
  • 深圳网站建设专业公司网络项目平台
  • 素材网站怎么推广营销软文范例大全300字
  • 网站制作实例教程论坛seo设置
  • 母婴网站建设前期规划新版阿里指数官网
  • 网站建设有什么看法今日头条官方正版
  • 网站seo快速日本域名注册
  • 网站建设的实训总结新闻头条今日要闻10条
  • wordpress站外连接百度怎么投广告
  • 阳江市新增确诊病例seo推广价格
  • 大学生兼职做网站百度关键词优化软件如何
  • 健康养生网站模板软件开发公司网站
  • 郑州官网seo技术株洲专业seo优化
  • 做pc和移动网站的适配小程序开发公司排行榜
  • 做下载类网站一年赚多少钱seo文章范文
  • 网站设计开发软件网络广告宣传怎么做
  • 自学网站建设好学吗中国软文网官网
  • 百度商桥怎么和网站拉新推广一手接单平台
  • 网站备案查询 美橙网长沙营销型网站建设
  • 上海做网站那家好夫唯seo培训
  • 网站开发分几个模块seo关键词优化
  • 网站建设公司彩铃做推广的技巧
  • 中迅做网站是模板站吗网络推广费用大概价格
  • 企业网站销售大数据
  • 开互联网公司赚钱吗青岛百度网站排名优化
  • 深圳电子商城网站建设十大教育培训机构排名
  • 企业网站建设方案详细方案搜索引擎推广与优化
  • 网站建设 顺德seo关键词优化软件