JAVA数列最小的两个数_用JAVA语言编译:数组中包含n个整数,从其中找出k个最小的数,写出你能想到的最快的方法!!!...

展开全部

最快k*O(n)~O(n),将前K个数放入一个k的数组中,按序放,对K+1到N的数,依次如e68a843231313335323631343130323136353331333433663038果比K数组总的小,将K中最大的取出,放入最小的数,一直维持K个,最后就是最小的K个。

import java.util.Arrays;

/**先给数值里的值进行从小到大排序,取从0到k-1索引的数组值

* @创建一个数组,包含11个元素,求5个最小的数

* @author Administrator

public class ArrayTest {

public static void main(String[] args) {

//最小元素的个数

int k=5;

//创建一个数组,

int[] arr = {1,3,45,33,67,12,88,11,46,32,89};

//操作数组的工具Arrays,sort()方法自动排序,由小到大

Arrays.sort(arr);

for(int i=0;i

System.out.println(arr[i]);

}

5f1e44469b478aed0b6349a0f13aa5a0.png

扩展资料:

此处数组是程序中声明的变量数组。它们不同于控件数组,控件数组是在设计时通过设置控件的 Index 属性规定的。变量数组总是连续的;与控件数组不同的是,不能从一个数组的中部加载或卸载数组元素。

一个数组中的所有元素具有相同的数据类型(在C、C++、Java、pascal中都这样。但也并非所有涉及数组的地方都这样,比如在Visual Foxpro中的数组就并没这样的要求)。当然,当数据类型为 Variant 时,各个元素能够包含不同种类的数据(对象、字符串、数值等等)。可以声明任何基本数据类型的数组,包括用户自定义类型和对象变量。

参考资料来源:百度百科-数组