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

网站简单设计中南路网站建设公司

网站简单设计,中南路网站建设公司,业之峰家装公司地址,wordpress 多站点开启leetcode原题链接#xff1a;数组中的第K个最大元素 题目描述 给定整数数组 nums 和整数 k#xff0c;请返回数组中第 k 个最大的元素。请注意#xff0c;你需要找的是数组排序后的第 k 个最大的元素#xff0c;而不是第 k 个不同的元素。 你必须设计并实现时间复杂度为 O…        leetcode原题链接数组中的第K个最大元素 题目描述 给定整数数组 nums 和整数 k请返回数组中第 k 个最大的元素。请注意你需要找的是数组排序后的第 k 个最大的元素而不是第 k 个不同的元素。 你必须设计并实现时间复杂度为 O(n) 的算法解决此问题。 示例 1: 输入: [3,2,1,5,6,4], k 2 输出: 5示例 2: 输入: [3,2,3,1,2,4,5,5,6], k 4 输出: 4提示 1 k nums.length 105-104  nums[i] 104 解题方法 小顶堆。求最大的k个元素用小顶堆求最小的k个元素用大顶堆。同时注意下c的语法糖。std::less用于定义大顶堆, std::greater用于定义小顶堆。 C代码 #include iostream #include vector #include queue #include functional // std::less, std::greater /* * 最大的k个元素采用小顶堆, std::greater * 最小的k个元素采用大顶堆, std::less * std::priority_queue的成员函数如下: * empty(),size(),top(),push(), emplace()[c11], pop(), swap(c11) */class Solution { public:int findKthLargest(std::vectorint nums, int k) {int n nums.size();if (n 0 || k n) {return -1;}std::priority_queueint, std::vectorint, std::greaterint pq;for (int i 0; i n; i) {if (i k) { //初始化小顶堆上的k个元素pq.emplace(nums[i]);} else if (nums[i] pq.top()) { //当前遍历的数字比堆顶元素大pq.pop();//先弹出堆顶元素pq.emplace(nums[i]);//再压入元素}}return pq.top();//小顶堆的头节点就是第k大元素} };
http://www.huolong8.cn/news/242989/

相关文章:

  • 南昌网站建设资讯做微信小程序哪个网站好
  • 旅游网页设计模板网站免费云南网站建设500
  • 深圳教育集团网站建设触屏手机网站设计
  • 我做外贸要开国际网站吗织梦网站程序安装
  • 公司微信网站建设方案模板下载湛江网红打卡点
  • 网站内容编辑怎么做免备案域名是危险网站
  • 南昌网优化网站设计公司asp建设网站需要了解什么
  • 网站死链接是什么做网站是要云空间吗
  • 国内最好软件网站建设动画设计稿
  • 佛山网站设计制作公司自己做的网站验证码出不来怎么回事
  • 个人主页网站html定制开发 商城网站 最快
  • 阿里云无主体新增网站上海建设安全生产协会网站
  • 济南专业网站优化微信扫一扫抽红包在哪里做网站
  • asp.net 个人网站工商注册身份验证app
  • 设计电子商务网站主页新会网站建设公司
  • 莆田网站建设收费标准asp.net 网站 方案
  • 怎么创建网站域名王也头像图片
  • 北京手机网站建设公司成都网络推广培训
  • 男男做h的视频网站刷粉网站推广
  • 商城类型的网站怎么做wordpress 在线pdf
  • 我做网站了圆通网站设计为什么学不好
  • 合肥建设网网站网站制作的公
  • 网站给篡改了要怎么做48互联网站建设
  • 免费建自己域名的网站吗图怪兽在线制作图片
  • 营销型网站策划怎么做网站开发女生可以做吗
  • 类似享设计的网站网站制作方案怎么写
  • vs2010网站开发登录代码wordpress thinkphp
  • 网站内容建设需要注意哪些问题怎么做微信公众号文章
  • 河南无限动力做网站怎么样wordpress超详细教程视频
  • 泗阳县建设局网站外贸公司网站建设方案