网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

如何在Java项目中实现一个快速查找算法-创新互联

如何在Java项目中实现一个快速查找算法?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

成都创新互联专注为客户提供全方位的互联网综合服务,包含不限于成都做网站、成都网站制作、宽甸网络推广、小程序定制开发、宽甸网络营销、宽甸企业策划、宽甸品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们大的嘉奖;成都创新互联为所有大学生创业者提供宽甸建站搭建服务,24小时服务热线:13518219792,官方网址:www.cdcxhl.com

快速查找算法,可以根据想要找的是第几个大的数,每次循环都能固定下来一个数在数组完整排完序之后的位置,每次循环都能定一个数的位置,如果当前固定的数的位置和用户要找的第几个数匹配,则就直接返回。例如我要找第二大的数,如果循环一次固定的数的下标是1,那就是当前需要找的数。

代码如下:

// 快速查找算法
public static int quickSelect(int[] arr, int selectIndex) {
    int s = 0;
    int i = s+1;
    while(i < arr.length) {
      if(arr[i] < arr[0]) {
        int t = arr[s+1];
        arr[s+1] = arr[i];
        arr[i] = t;
        s += 1;
        i = s+1;
        continue;
      }
      i++;
    }
    // i找到最后之后将下表为s的值和第一个值交换
    int temp = arr[0];
    arr[0] = arr[s];
    arr[s] = temp;
    if(selectIndex-1 == s) {
      return arr[s];
    }else {
      // 将数组不需要的切掉  用后一部分去回调
      int arrs[] = new int[arr.length - s];
      for(int j = s; j < arr.length; j++) {
        arrs[j-s] = arr[j];
      }
      quickSelect(arrs, selectIndex);
    }
    return 0;
}

新闻名称:如何在Java项目中实现一个快速查找算法-创新互联
新闻来源:http://bjjierui.cn/article/dejcdd.html

其他资讯