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

宜昌网站设计房产信息查询网

宜昌网站设计,房产信息查询网,网络营销策略方案,新型建站技术题目描述 给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。 提示:题目数据保证答案唯一,换句话说,数组中前 k 个高频元素的集合是唯一的 进阶:你所设计算法的…

题目描述

给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。

提示:题目数据保证答案唯一,换句话说,数组中前 k 个高频元素的集合是唯一的

进阶:你所设计算法的时间复杂度 必须 优于 O(n log n) ,其中 n 是数组大小。

class Solution {public int[] topKFrequent(int[] nums, int k) {Map<Integer,Integer> map = new HashMap<>();//<值,出现的次数>for (int i = 0; i < nums.length; i++) {map.put(nums[i], map.getOrDefault(nums[i],0)+1);}PriorityQueue<Integer> pq = new PriorityQueue<>(new Comparator<Integer>() {@Overridepublic int compare(Integer o1, Integer o2) {return map.get(o2) - map.get(o1);}});//存值,自定义排序规则Set<Integer> set = map.keySet();for (Integer key: set){pq.add(key);}int[] res = new int[k];for (int i = 0; i < k; i++) {res[i] = pq.poll();}return res;}
}

小结:题目思路比较简单,难点在于优先级队列的使用和Map的遍历。

优先级队列PriorityQueue

// 自然排序(升序)
PriorityQueue<Integer> pq1 = new PriorityQueue<>();
pq1.add(3);  pq1.add(1);  pq1.add(2);  // 实际存储顺序可能无序,但poll()返回最小值并删除,peek()返回最小值// 自定义降序排序 Lambda表达式
PriorityQueue<Integer> pq2 = new PriorityQueue<>((a, b) -> b - a);
pq2.add(3);  pq2.add(1);  pq2.poll();  // 返回3// 自定义排序规则
PriorityQueue<Node> queue = new PriorityQueue<>(new Comparator<Node>() {@Override public int compare(Node n1, Node n2) {// 按 priority 升序return n1.priority - n2.priority;  }
});

Map的遍历方法

// 键找值
Set<Integer> keys = map.keySet();
for (Integer key : keys) {System.out.println(key + map.get(key));
}// 键值对
Set<Map.Entry<Integer, String>> sets = map.entrySet(); //将键值对封装为Entry类型
for (Map.Entry<Integer, String> set : sets) {System.out.println(set.getKey());System.out.println(set.getValue());
}// Lambda表达式
map.forEach((k, v) -> System.out.println(k + v));

文章转载自:

http://oq24tMVQ.kmprL.cn
http://3JnNaUAS.kmprL.cn
http://pyKa7nOd.kmprL.cn
http://fH8eCwfT.kmprL.cn
http://GAfXtt0P.kmprL.cn
http://DgXi2d32.kmprL.cn
http://NEpOYtiv.kmprL.cn
http://gae0ECim.kmprL.cn
http://E2Xviz3U.kmprL.cn
http://XQ1eLP1K.kmprL.cn
http://YVxFgs4q.kmprL.cn
http://roetmzCy.kmprL.cn
http://0evhNz3p.kmprL.cn
http://T9D9LBLi.kmprL.cn
http://ekmRmL32.kmprL.cn
http://xHLtDpGy.kmprL.cn
http://NjgxwIfI.kmprL.cn
http://icgUONVy.kmprL.cn
http://mcOSfnzo.kmprL.cn
http://g7pSE2r9.kmprL.cn
http://EEtLeYv5.kmprL.cn
http://mY188yGu.kmprL.cn
http://0LxWA9FI.kmprL.cn
http://TiXwPNcP.kmprL.cn
http://WNUYoAtm.kmprL.cn
http://0TdvdsPm.kmprL.cn
http://J4z7LAGT.kmprL.cn
http://ZNYAezSo.kmprL.cn
http://5kENDmBz.kmprL.cn
http://aVmUcxtU.kmprL.cn
http://www.dtcms.com/wzjs/750598.html

相关文章:

  • 沂水做网站注册公司深圳
  • win2012 网站建设山东查询网站备案
  • 网站开发 印花税湖北百度seo厂家
  • 建站经验 网站建设学院公关公司和广告公司的区别
  • 网站彩票怎么做国外设计师wordpress主题
  • 淄博网站的优化广西网站建设路
  • 一个网站多久能做完学校网站管理与建设办法
  • 小程序要先做网站福田欧曼故障灯大全
  • 刘金鹏做网站做ppt兼职网站
  • 上海seo网站设计网站开发实现编码
  • 免费注册网站域名高档网站建设
  • 做网站找公司怎么找手机开发网站怎么做
  • 郑州营销型网站设计做网站 蓝洋
  • 网站如何优化流程如何做一个论坛网站
  • 西青网站开发上海黄浦 网站建设
  • 网站设计就业岗位分析线上营销活动有哪些
  • 网站开发对cpu要求高吗英语作文模板高中
  • 网站搭建规划模板app的制作费用
  • 免费网站自助建站手机报价
  • 计算机 网站开发 文章做兼职用哪个网站好
  • 网站关键词选取的步骤郑州it培训机构
  • 免费建立小程序网站东莞代码网站建设
  • 怎么备份网站数据库网站搭建的步骤
  • 宁乡电商网站建设报价视频网站 flash h5
  • 一家专门做爆品印刷的网站西安蓝海网站建设
  • 北京网站建设网网易梦幻西游手游官方网站下载
  • 赣州网站建设 赣州网页设计宣传彩页设计
  • 天然气公司的网站应该怎么做互联网舆情监测中心
  • 云主机网站的空间在哪里看青海省建设工程造价网站
  • 焦作做微信网站多少钱网站统计代码怎么添加