博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
求数列中第K大的数
阅读量:6168 次
发布时间:2019-06-21

本文共 708 字,大约阅读时间需要 2 分钟。

原创


利用到快速排序的思想,快速排序思想:

array代表存放数列的数组,K代表第K大的数,mid代表一趟快速排序后返回的基准记录下标;

一趟快速排序下来若基准记录存在的位置满足:array.length-mid==K,则说明array[mid]即是第

K大的数,若小于K,说明第K大的数在区间 [ left , mid-1 ],大于K说明在区间 [ mid+1,right ];

import java.util.*;public class 算法分析与设计2_3_选做 {        static int array[];    static int K;    static int mid;        static int yiSort(int left,int right) {    //一趟快速排序        int x=array[left];    //存储基准记录        while(left
=x) { right--; } if(left
=K):"); int n=reader.nextInt(); array=new int[n]; System.out.print("输入数组元素:"); for(int i=0;i

16:31:24

2018-10-06

转载于:https://www.cnblogs.com/chiweiming/p/9747667.html

你可能感兴趣的文章
关于SaveChanges
查看>>
php7扩展开发 一 获取参数
查看>>
处女座与复读机
查看>>
Laravel 5.2数据库--迁移migration
查看>>
ExtJs Extender controls 不错的例子
查看>>
html的基础知识
查看>>
一个菜鸟正在用SSH写一个论坛(2)
查看>>
Mybatis Sql片段的应用
查看>>
突发奇想20150126
查看>>
郁闷,郁闷啊
查看>>
Nginx + CGI/FastCGI + C/Cpp
查看>>
学习笔记------jsp页面与jsp标记
查看>>
DS博客作业02--线性表
查看>>
第三届ACM山东省赛I题_Chess_STL
查看>>
《C++ Primer》读书笔记 第一章
查看>>
transition与visibility与display
查看>>
14种网页jQuery和css3特效插件代码演示
查看>>
jQuery each和js forEach用法比较
查看>>
Oracle 11g 测试ogg中断之后,重新同步操作
查看>>
Oracle 数据库SQL审计
查看>>