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

网站的关键词在哪里设置网站建设php的心得和体会

网站的关键词在哪里设置,网站建设php的心得和体会,广州市第二建筑工程有限公司,wordpress安全配置文件目录 1- 思路快速选择 2- 实现⭐215. 数组中的第K个最大元素——题解思路 3- ACM实现 原题连接:215. 数组中的第K个最大元素 1- 思路 快速选择 第 k 大的元素的数组下标: int target nums.length - k 1- 根据 partition 分割的区间来判断当前处理方式…

目录

  • 1- 思路
    • 快速选择
  • 2- 实现
    • 215. 数组中的第K个最大元素——题解思路
  • 3- ACM实现


  • 原题连接:215. 数组中的第K个最大元素

1- 思路

快速选择

  • 第 k 大的元素的数组下标: int target = nums.length - k

1- 根据 partition 分割的区间来判断当前处理方式

  • 如果返回的 int 等于 target 说明找到了,直接返回
  • 如果返回的 int 小于 target 说明要在当前区间的右侧寻找,也就是 [pivotIndex+1,right]
  • 如果返回的 int 大于 target 说明要在当前区间的左侧寻找,也就是 [left,pivotIndex-1]

2- 实现 partition 随机选取一个 pivotIndex 分割区间

  • 2-1 随机选择一个下标
  • 2-2 交换 left 和 随机下标
  • 2-3 将随机下标的元素值设置为 pivot
  • 2-4 定义 lege 下标 使用 while(true)
    • 使得 le 指向的元素始终小于 pivot
    • 使得 ge 指向的元素始终大于 pivot

2- 实现

215. 数组中的第K个最大元素——题解思路

在这里插入图片描述

import java.util.Random;
class Solution {static Random random = new Random(System.currentTimeMillis());public int findKthLargest(int[] nums,int k){return quickSelect(nums,0,nums.length-1,nums.length-k);}public int quickSelect(int[] nums,int left,int right,int kIndex){if(right==left){return nums[left];}//int pivotIndex = partition(nums,left,right);if(pivotIndex == kIndex){return nums[kIndex];}else if( pivotIndex>kIndex){return quickSelect(nums,left,pivotIndex-1,kIndex);}else{return quickSelect(nums,pivotIndex+1,right,kIndex);}}public int partition(int[] nums,int left,int right){int randomIndex = left + random.nextInt(right-left+1);swap(nums,left,randomIndex);int mid = nums[left];int le = left+1;int ge = right;while(true){while(le<=ge && nums[le] < mid){le++;}while(le<=ge && nums[ge] > mid){ge--;}if(le>=ge){break;}swap(nums,le,ge);le++;ge--;}swap(nums,left,ge);return ge;}public void swap(int[] nums,int left,int right){int tmp = nums[left];nums[left] = nums[right];nums[right] = tmp;}}

3- ACM实现

public class kthNums {static Random random = new Random(System.currentTimeMillis());public static int findK(int[] nums,int k){// 快速选择 ,传四个参数return quickSelect(nums,0,nums.length-1,nums.length-k);}public static int quickSelect(int[] nums,int left,int right,int kIndex){if(right==left){return nums[left];}//int pivotIndex = partition(nums,left,right);if(pivotIndex == kIndex){return nums[kIndex];}else if( pivotIndex>kIndex){return quickSelect(nums,left,pivotIndex-1,kIndex);}else{return quickSelect(nums,pivotIndex+1,right,kIndex);}}public static int partition(int[] nums,int left,int right){int randomIndex = left + random.nextInt(right-left+1);swap(nums,left,randomIndex);int mid = nums[left];int le = left+1;int ge = right;while(true){while(le<=ge && nums[le] < mid){le++;}while(le<=ge && nums[ge] > mid){ge--;}if(le>=ge){break;}swap(nums,le,ge);le++;ge--;}swap(nums,left,ge);return ge;}public static void swap(int[] nums,int left,int right){int tmp = nums[left];nums[left] = nums[right];nums[right] = tmp;}public static void main(String[] args) {Scanner sc = new Scanner(System.in);String input = sc.nextLine();String[] parts = input.split(" ");int[] nums = new int[parts.length];for(int i = 0 ; i < nums.length ; i++){nums[i] = Integer.parseInt(parts[i]);}System.out.println("输入K");int k = sc.nextInt();System.out.println("结果是"+findK(nums,k));}
}
http://www.yayakq.cn/news/472896/

相关文章:

  • 我市精神文明建设的门户网站是手机网站制作app
  • 公司的网站怎么运营做网站 做app
  • 服装公司网站规划建设中国摄影网官网
  • 手机网站返回跳转企业广告策划公司
  • 百度k了网站怎么办html交易网站设计实例
  • 代做效果图网站外链购买
  • 上海网站建设开发公司wordpress页面分享
  • 网站彩票网站开发米课中有个内贸网站建设
  • 天猫网站建设的目标是什么做网站 网站违法吗
  • 怎么用jsp做网站详细集团网站设计欣赏
  • 马良行网站3d模型预览怎么做的做公众号app 网站 app
  • 如何在百度网站收录提交入口怎么在百度上设置自己的门店
  • 做网站的一般多少钱湖南网
  • 网站建设公司大概多少钱广告制作公司利润怎么样
  • 红酒网站建设策划书装修设计师培训班
  • 本地邵阳网站建设广州建设监理协会网站
  • 网站建设定金合同北京互联网大厂排名
  • 网店美工的重要性怎么做外贸网站优化
  • 商城网站建公司企业邮箱怎么登录
  • 苏州市建设人才网官方网站做网站就找喇叭人
  • 自己的域名搭建网站湖北网站建设开发
  • 企业网站的建设报价网站优化seo推广服务
  • 绿色网站模板顺德网站开发
  • 长春网站建设小程序电影网站建设的程序
  • 流程图在线制作网站动画设计师证怎么考
  • 手工艺品网站建设h5模板怎么制作
  • 成都专业网站设计公司郑州app制作开发公司
  • 开了网站建设公司 如何接业务做漫画的网站有哪些
  • 酒泉网站怎么做seowordpress稳定版
  • 网站域名后缀代表什么意思长沙企业建站招聘信息