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

怎么做阿里巴巴外贸网站临沂网站服务器价格

怎么做阿里巴巴外贸网站,临沂网站服务器价格,wordpress 微博相册,兼职网站开发团队工作项目总结如果对于堆不是太认识&#xff0c;请点击&#xff1a;堆的初步认识-CSDN博客 解题思路&#xff1a; /*** <h3>求数组中第 K 大的元素</h3>* <p>* 解体思路* <ol>* 1.向小顶堆放入前k个元素* 2.剩余元素* 若 < 堆顶元素, 则略过* …

如果对于堆不是太认识,请点击:堆的初步认识-CSDN博客

解题思路:

/*** <h3>求数组中第 K 大的元素</h3>* <p>* 解体思路* <ol>*     1.向小顶堆放入前k个元素*     2.剩余元素*         若 <= 堆顶元素, 则略过*         若 > 堆顶元素, 则替换堆顶元素*     3.这样小顶堆始终保留的是到目前为止,前K大的元素*     4.循环结束, 堆顶元素即为第K大元素* </ol>*/

小顶堆(可删去用不到代码)

class MinHeap {int[] array;int size;public MinHeap(int capacity) {array = new int[capacity];}private void heapify() {for (int i = (size >> 1) - 1; i >= 0; i--) {down(i);}}public int poll() {swap(0, size - 1);size--;down(0);return array[size];}public int poll(int index) {swap(index, size - 1);size--;down(index);return array[size];}public int peek() {return array[0];}public boolean offer(int offered) {if (size == array.length) {return false;}up(offered);size++;return true;}public void replace(int replaced) {array[0] = replaced;down(0);}private void up(int offered) {int child = size;while (child > 0) {int parent = (child - 1) >> 1;if (offered < array[parent]) {array[child] = array[parent];} else {break;}child = parent;}array[child] = offered;}private void down(int parent) {int left = (parent << 1) + 1;int right = left + 1;int min = parent;if (left < size && array[left] < array[min]) {min = left;}if (right < size && array[right] < array[min]) {min = right;}if (min != parent) {swap(min, parent);down(min);}}// 交换两个索引处的元素private void swap(int i, int j) {int t = array[i];array[i] = array[j];array[j] = t;}
}

题解

public int findKthLargest(int[] numbers, int k) {MinHeap heap = new MinHeap(k);for (int i = 0; i < k; i++) {heap.offer(numbers[i]);}for (int i = k; i < numbers.length; i++) {if(numbers[i] > heap.peek()){heap.replace(numbers[i]);}}return heap.peek();
}

注意哦:求数组中的第 K 大元素,使用堆并不是最佳选择,可以采用快速选择算法

 

http://www.yayakq.cn/news/780529/

相关文章:

  • 化妆品网站建设网站网站建设的6个基本步骤
  • 域名绑定网站提示正在建设阿里云手机版网站建设
  • 株洲 网站建设深圳建设合同备案 网站
  • 邯山手机网站建设湘西网站制作
  • 网站答辩ppt怎么做织梦网站地图模板修改
  • 网站建设网如何黑网站
  • 电商数据网站有哪些短网址生成器app
  • 北京网站建设报价找工作的网站有哪些?
  • 丹阳网站建设要多少钱自己怎么做拼单网站
  • 厦门做点击付费网站西安专业的网站优化
  • 响应式网站 哪些厦门h5网站建设
  • 宜宾网站建设北斗网络服务网站 建设原则
  • 广州网站开发建设工商注册系统
  • 盐城微网站建设网站图片自动轮换怎么做的
  • 网站设计的公司价格wordpress模板视频教程
  • 建一个公司网站多少钱?开学第一课汉字做网站
  • 东营网站搭建搜索引擎优化涉及的内容
  • android软件开发工具厦门谷歌seo
  • 绵阳建设网站网络seo优化公司
  • 威海好的网站建设公司品牌建设项目申报
  • 在线企业查询系统个人网站建设网站排名优化
  • 做h5游戏的网站网页设计公司排名前十
  • 文化馆建设网站青岛正规网站建设哪家好
  • 电子商务网站设计物流方案常熟沿江开发区人才网
  • 有哪些做婚品的网站浏览器网站免费进入
  • 网站网站服务器wordpress 太卡
  • 备案网站名称有什么用广州seo网站公司
  • .net个人网站开发视频徐州网站建设优化
  • 现在网站做多宽长春网站网站建设
  • html制作网站网站横幅怎么做