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

阿坝州建设局网站刘志彬网页app在线制作

阿坝州建设局网站刘志彬,网页app在线制作,网站建设竞争对手分析,备案的网站程序上传文章目录 题目介绍题解 题目介绍 题解 法一:基于快速排序的选择方法 以中间元素pivot为基准进行排序后,右指针 r 的位置就是最终全部排序好后pivot的位置,然后去左边或右边递归寻找第k个位置(答案)的元素。 代码如下…

文章目录

  • 题目介绍
  • 题解

题目介绍

在这里插入图片描述

题解

法一:基于快速排序的选择方法

以中间元素pivot为基准进行排序后,右指针 r 的位置就是最终全部排序好后pivot的位置,然后去左边或右边递归寻找第k个位置(答案)的元素。

代码如下:

class Solution {public int findKthLargest(int[] nums, int k) {int n = nums.length;return quickselect(nums, 0, n - 1, n - k);}// 返回最终排序后数组第k个位置的元素public int quickselect(int[] nums, int left, int right, int k) {if (left == right) { // 区间只剩一个元素,直接返回  >=也可以return nums[k];}int mid = left + (right - left) / 2;int pivot = nums[mid];int l = left, r = right;while (l <= r) {!!!不能用<=,是为了防止中轴值(pivot)被多次交换while (nums[l] < pivot)l++; while (nums[r] > pivot)r--; if (l <= r) {swap(nums, l, r); l++;r--;}}// 递归处理左半部分或右半部分if (k <= r) {return quickselect(nums, left, r, k); // 目标在左半部分} else {return quickselect(nums, l, right, k); // 目标在右半部分}}public void swap(int[] nums, int i, int j) {int tmp = nums[i];nums[i] = nums[j];nums[j] = tmp;}
}
http://www.dtcms.com/wzjs/617467.html

相关文章:

  • 郑州服装设计公司昆明网站排名优化
  • 如何建设一个静态网站6新生活cms下载
  • 企业网站有什么个人装修队
  • 微信网站cmswordpress 插件 活动
  • 网站建设的技术目标这个网站做海外推广
  • 郑州网站运营专业乐云seo用DW做的网站怎么弄成链接
  • 江门网站定制多少钱黄浦专业做网站
  • 雅加达网站建设公司注册要求
  • 绵阳做网站公司wordpress怎么播放视频播放器
  • 前端网站模板汕头市网站建设分站服务机构
  • 网站建成之后应该怎么做网站建设与维护1997年
  • 机构组织网站建设南昌住房建设局网站
  • 做新网站不换域名邵阳市中高风险地区
  • 定制级高端网站建设享设计网做兼职设计师怎么样
  • 奉贤北京网站建设丹阳网站制作
  • 网站调用微信数据什么是交换链接
  • 做网站营销公司有哪些二级域名免费网站怎么申请
  • 个人建网站运营.沈阳正规的男科医院排名
  • 学校建网站网站建设后台功能模块
  • 牛商网做网站网站主页设计注意点
  • 果农在哪些网站做推广高端定制网站开发设计建站流程
  • 经典网站域名网站编程需要什么语言
  • 资讯网站模板带会员投稿功能百度搜索引擎提交入口
  • 网站维护机构自己做视频网站用cdn那个便宜
  • 易语言做网站源码迎访问备案网站管理系统
  • 做淘口令网站wordpress改变访问目录
  • 如何对自己建设的网站进行推广试玩无限刷一天赚500
  • 网站建设图片教程线上直播营销策划方案
  • 建立网站目录结构时应该注意哪几个方面个人网页设计模板教程
  • wordpress免费建站吗徐州市制作网站