赞
踩
给定一个长度为 n 的可能有重复值的数组,找出其中不去重的最小的 k 个数。例如数组元素是4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4(任意顺序皆可)。
javascript 实现
function GetLeastNumbers_Solution(arr, k) { var i, j, temp, flag, brr; flag = 0; brr = [];//用于接收排好序的前k个数 //若数组为空或k>数组的长度,则查询失败 if (arr.length == 0 || k > arr.length) return [] //1排序 for (i = 0; i < arr.length - 1; i++) { for (j = 0; j < arr.length - 1 - i; j++) { if (arr[j] > arr[j + 1]) { temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } for (i = 0; i < k; i++) { brr[i] = arr[i]; } return brr; } module.exports = { GetLeastNumbers_Solution : GetLeastNumbers_Solution };
qq3048808457 看完觉得有问题的朋友可以加我qq
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。