算法:给定一个数组,找出其中最小的K个数。
程序员文章站
2024-02-04 08:22:34
...
题目描述
给定一个数组,找出其中最小的K个数。例如数组元素是4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4。如果K>数组的长度,那么返回一个空的数组
示例1
输入
[4,5,1,6,2,7,3,8],4
返回值
[1,2,3,4]
import java.util.ArrayList;
import java.util.List;
public class Solution {
public ArrayList<Integer> GetLeastNumbers_Solution(int[] arr, int k) {
ArrayList<Integer> list=new ArrayList();
int lenth=arr.length;
if(lenth<k)
return list;
for(int i=0;i<k;i++){
for(int j=1+i;j<arr.length-1;j++){
if(arr[i]>arr[j]){
int tmp=arr[j];
arr[j]=arr[i];
arr[i]=tmp;
}
}
list.add(arr[i]);
}
return list;
}
}
上一篇: InputStream2String
下一篇: 自己的一点思路
推荐阅读
-
算法:给定一个数组,找出其中最小的K个数。
-
用大顶堆取出一个数组中最小的k个数
-
(Pythin基础习题)给定一个数组,找出其中最小的K个数
-
给定一个整数数组和一个整数 k,你需要找到该数组中和为 k 的连续的子数组的个数。
-
求一个数组中的最大值和最小值的算法改进 php 实现
-
Leetcode:给定一个数组,从其中选取三个数,要求三个数的和必须是0,求出所有这样的组合
-
快速找出一个数组中的两个数字,让这两个数字之和等于一个给定的值
-
个有序的整形数组,给定一个数,在数组中找出两个数的和等于这个数,并打印其下标
-
一个整形数组,给定一个数,在数组中找出两个数的和等于这个数
-
go语言实现--找出一个数组中的两个数,这两个数之和等于一个给定的值